如何在 Rhino 中从使用 gzip 编码的服务器加载 JavaScript 库
How do I load a javascript library in Rhino, from a server that uses gzip encoding?
在 rhino 中,我习惯于能够从 URL 加载 JavaScript 库,例如
load('http://latex.mathoverflow.net/mathjax/MathJax.js')
(这实际上不起作用,除非您首先通过 env.js 或类似方式提供类似浏览器的环境。但是 rhino 设法获取了该文件,并开始编译它。
但是,如果服务器提供 javascript 库 gziped,rhino 似乎会立即失败并出现语法错误,例如
load('http://cdn.mathjax.org/mathjax/latest/MathJax.js')
您可以使用 curl 看到差异,例如
curl --head http://latex.mathoverflow.net/mathjax/MathJax.js
给
HTTP/1.1 200 OK日期:2011 年 5 月 9 日星期一 21:07:53 GMT服务器:阿帕奇最后修订日期: 星期五, 07 一月 2011 05:13:36 GMTETag: "24b8044-9db7-4993aae2a4000"接受范围:字节内容长度:40375变化:接受编码内容类型:应用程序/JavaScript
而
curl --head http://cdn.mathjax.org/mathjax/latest/MathJax.js
给
HTTP/1.0 200 OK服务器: nginx日期:2011 年 5 月 8 日星期日 20:06:19 GMT内容类型:应用程序/JavaScript最后修改日期: 周日, 13 三月 2011 17:30:00 GMTETag: "3f59e66-a250-49e608b6bf600"-gzip接受范围:字节内容编码:gzip缓存控制:最大年龄=86400内容长度:12466年龄:3624X-Cache:从云前命中X-amz-cf-id: d0e2d89a0d90c9b7bb49b466e233b005389f96db378543b01de51769589f84dfd9733430f773846f通过: 1.0 fee706bb2dcbccabb9a09a17e9d6037c.cloudfront.net:11180 (CloudFront), 1.0 6d5d46d2c7dcee5d4601d83b29b92a90.cloudfront.net:11180 (CloudFront)连接:关闭
有什么建议吗?有没有技巧可以让犀牛加载压缩脚本?
现在有一个错误报告。
相关文章:
- 在服务器中编码,并使用escape在javascript中解码
- 使用 POST 方法通过 ajax 发送的数据在发送到服务器之前是否必须进行 URL 编码
- json在Android中对URL进行编码后未从服务器接收到
- 服务器编码的JSON数据出现问题,无法绘制图表
- Dart web服务器应该对所有内容使用UTF-16编码吗
- 在 Javascript 中渲染时取消编码服务器端字符串
- 是否有优化的Web堆栈以最大程度地减少服务器端编码
- 如何将html上的数据编码为json并发送到服务器
- 如何避免对服务器url进行硬编码
- 使用Javascript服务器端编码从Classic ASP返回JSONP
- 将base64编码的图像上传到Node.js服务器无法工作
- 在Javascript中创建注释框,无需任何服务器端编码
- 服务器端从html页面(而不是jsp)输出编码,以防止XSS
- 在没有服务器端编码的情况下获取特定的twitter用户时间线
- 谷歌地理编码API,从服务器端转移到客户端,问题
- 通过jQuery AJAX接收图像并显示图像,而不需要服务器对图像进行base64编码
- 本地和远程服务器之间的字符编码不同
- 在.net服务器上压缩/解压缩在客户端使用lz-string.js编码的字符串
- Base64编码图像主机url或服务器文件路径
- WebRTC硬编码连接(无服务器)