在rhino中,我习惯于从URL加载javascript库,例如
load('http://latex.mathoverflow.net/mathjax/MathJax.js')
(除非您首先通过env.js或类似方式提供类似浏览器的环境,否则这实际上不起作用。但是rhino设法获取文件,并开始编译它。)
但是,如果服务器提供gzip的javascript库,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 Date: Mon, 09 May 2011 21:07:53 GMT Server: Apache Last-Modified: Fri, 07 Jan 2011 05:13:36 GMT ETag: "24b8044-9db7-4993aae2a4000" Accept-Ranges: bytes Content-Length: 40375 Vary: Accept-Encoding Content-Type: application/javascript
,而
curl --head http://cdn.mathjax.org/mathjax/latest/MathJax.js
给出
HTTP/1.0 200 OK Server: nginx Date: Sun, 08 May 2011 20:06:19 GMT Content-Type: application/javascript Last-Modified: Sun, 13 Mar 2011 17:30:00 GMT ETag: "3f59e66-a250-49e608b6bf600"-gzip Accept-Ranges: bytes Content-Encoding: gzip Cache-Control: max-age=86400 Content-Length: 12466 Age: 3624 X-Cache: Hit from cloudfront X-Amz-Cf-Id: d0e2d89a0d90c9b7bb49b466e233b005389f96db378543b01de51769589f84dfd9733430f773846f Via: 1.0 fee706bb2dcbccabb9a09a17e9d6037c.cloudfront.net:11180 (CloudFront), 1.0 6d5d46d2c7dcee5d4601d83b29b92a90.cloudfront.net:11180 (CloudFront) Connection: close
有什么建议吗?是否有允许rhino加载gzip压缩脚本的技巧?