在 rhino 中,我习惯于从 URL 加载 javascript 库,例如
load('http://latex.mathoverflow.net/mathjax/MathJax.js')
(这实际上不起作用,除非您首先通过 env.js 或类似的方式提供类似浏览器的环境。但是 rhino 设法获取文件并开始编译它。)
但是,如果服务器提供 javascript 库 gzipped,rhino 似乎会立即失败并出现语法错误,例如
load('http://cdn.mathjax.org/mathjax/latest/MathJax.js')
您可以使用 curl 看到差异,例如
curl --head http://latex.mathoverflow.net/mathjax/MathJax.js
给
HTTP/1.1 200 正常 日期:2011 年 5 月 9 日星期一 21:07:53 GMT 服务器:阿帕奇 最后修改时间:格林威治标准时间 2011 年 1 月 7 日星期五 05:13:36 ETag:“24b8044-9db7-4993aae2a4000” 接受范围:字节 内容长度:40375 变化:接受编码 内容类型:应用程序/javascript
尽管
curl --head http://cdn.mathjax.org/mathjax/latest/MathJax.js
给
HTTP/1.0 200 正常 服务器:nginx 日期:2011 年 5 月 8 日星期日 20:06:19 GMT 内容类型:应用程序/javascript 最后修改时间:2011 年 3 月 13 日星期日 17:30:00 GMT ETag:“3f59e66-a250-49e608b6bf600”-gzip 接受范围:字节 内容编码:gzip 缓存控制:max-age=86400 内容长度:12466 年龄:3624 X-Cache:来自云端 X-Amz-Cf-Id:d0e2d89a0d90c9b7bb49b466e233b005389f96db378543b01de51769589f84dfd9733430f773846f 通过:1.0 fee706bb2dcbccabb9a09a17e9d6037c.cloudfront.net:11180 (CloudFront)、1.0 6d5d46d2c7dcee5d4601d83b29b92a90.cloudfront.net:11180 (CloudFront) 连接:关闭
有什么建议么?有没有一个技巧可以让 rhino 加载压缩脚本?