gpt4 book ai didi

internet-explorer - 为什么 Internet Explorer 11 不能解码这个 javascript?

转载 作者:行者123 更新时间:2023-12-04 09:02:50 26 4
gpt4 key购买 nike

最近an IE update似乎已经破坏了我们的一些嵌入式设备配置软件。

嵌入式设备的空间非常有限,因此我们对所有大型资源进行预压缩,并使用 Content-Encoding 通知浏览器它需要对资源进行压缩。这在 IE 之前一直运行良好,现在在 Firefox 和 Chrome 中运行良好。显然,不支持 gzip 的浏览器将无法运行,但它们很少见,我们不必担心。

似乎发生的情况是 IE 发出对 javascript 的请求并尝试评估实际的 gzip 字节而不是压缩和评估 javascript 代码的字符。

我查看了 wireshark 和 mitmproxy 中的请求,似乎没有什么异常。以下是 IE 发送的请求和 header (使用 mitmproxy 记录):

GET /extall.js.gz HTTP/1.1
Accept: application/javascript, */*;q=0.8
Referer: http://10.242.2.10:3001/index.htm
Accept-Language: en-US
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding: gzip, deflate
Host: 10.242.2.10:3001
DNT: 1
Connection: Keep-Alive
Cache-Control: no-cache

然后这里是响应数据,主体被省略(它是 gzip 数据。)

HTTP/1.0 200 OK
Date: Wed, 27 Aug 2014 19:12:54 GMT
Server: Foo
Content-type: text/javascript; charset=utf-8
Content-Encoding: gzip
Content-Length: 203228

...

值得一提的是,我用上面的标题说明了一个基本的测试用例,只用了一些 Perl 代码,因为摆弄硬件很麻烦。据我所知,触发 IE 问题的最简单方法是将 Content-Encoding header 设置为 gzip 并预先 gzip 正文,而不是使用常规的 mod_deflate 或其他任何东西。

注意:IE 要求应用程序/javascript。我已将我们的内容类型更改为投降,但这对这没有帮助。

最佳答案

结果是这个 is a bug in IE .解决方法是从路径中删除 .gz。哇哇。

关于internet-explorer - 为什么 Internet Explorer 11 不能解码这个 javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25535353/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com