开发者

How do I load a javascript library in Rhino, from a server that uses gzip encoding?

In rhino, I'm used to being able to load javascript libraries from a URL, e.g.

load('http://latex.mathoverflow.net/mathjax/MathJax.js')

(This doesn't actually work, unless you provide a browser-like environment first, via env.js or similar. But rhino manages to get the file, and start compiling it.)

However, if the server provides the javascript library gzipped, rhino seems to fail immediately with syntax errors, e.g.

load('http://cdn.mathjax.org/mathjax/latest/MathJax.js')

You can see the difference using curl, e.g.

curl --head http://latex.mathoverflow.net/mathjax/MathJax.js

gives

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

while

curl --head http://cdn.mathjax.org/mathjax/latest/MathJax.js

gives

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

Any suggestions? Is there a trick to allow rhino to load gzipped scripts?


There is now a bug report for this.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜