Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript GZip在IE9中不起作用_Javascript_Angularjs_Json_Internet Explorer 9_Spring 4 - Fatal编程技术网

Javascript GZip在IE9中不起作用

Javascript GZip在IE9中不起作用,javascript,angularjs,json,internet-explorer-9,spring-4,Javascript,Angularjs,Json,Internet Explorer 9,Spring 4,在有人指出之前,是的,我翻阅了SFO并阅读了所有链接/解决方案,但仍然无法找到问题所在。这就是我创建这篇新帖子的原因 因此,我使用的是Spring4+AngularJS w/Tomcat7.0.67。尝试压缩HTTP响应,因为大多数情况下,它将是约200 KB的JSON数据!因此,我创建了一个过滤器来压缩响应,它在除IE9之外的所有浏览器上都能正常工作!!你可能会问为什么IE9?因为我的客户这么说!所以我别无选择 我尝试添加内容编码以响应控制器的请求,如 response.setHeader("

在有人指出之前,是的,我翻阅了SFO并阅读了所有链接/解决方案,但仍然无法找到问题所在。这就是我创建这篇新帖子的原因

因此,我使用的是Spring4+AngularJS w/Tomcat7.0.67。尝试压缩HTTP响应,因为大多数情况下,它将是约200 KB的JSON数据!因此,我创建了一个过滤器来压缩响应,它在除IE9之外的所有浏览器上都能正常工作!!你可能会问为什么IE9?因为我的客户这么说!所以我别无选择

我尝试添加内容编码以响应控制器的请求,如

response.setHeader("Content-Encoding", "gzip, deflate");
但是IE未能解密数据,尽管数据像在其他浏览器中一样被压缩

我甚至为所有请求添加了以下行

$httpProvider.defaults.headers.common["Accept-Encoding"] = "gzip, deflate";
但仍然不起作用

请帮助我了解问题所在

更新: 其他浏览器中的gzip响应大小为14.7KB,而IE中的响应大小为225KB,这是未压缩的数据大小

**详细标题:**

Response Headers :
view source
Cache-Control:public, max-age=0, must-revalidate
Content-Encoding:gzip
Content-Length:14624
Content-Type:application/json;charset=UTF-8
Date:Mon, 18 Jan 2016 11:48:03 GMT
Expires:Mon, 18 Jan 2016 11:48:02 GMT
Server:Apache-Coyote/1.1

Request Headers :
view source
Accept:application/json, text/html
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8
Cache-Control:no-cache
Connection:keep-alive
Content-Length:0
Cookie:JSESSIONID=83DCA3B424E9F7A3EB8E165EFDA9730D; __ngDebug=true
Host:localhost:8080
Origin:http://localhost:8080
Pragma:no-cache
Referer:http://localhost:8080/AppName/test/
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,    like Gecko) Chrome/47.0.2526.111 Safari/537.36
来自IE9的头文件

Request POST http://xx.xx.xx.xx:8080/AppName/loadClientMaster HTTP/1.1
Referer http://xx.xx.xx.xx:8080/AppName/test/#/menu
Accept  application/json, text/html
Accept-Language en-us
Accept-Encoding gzip, deflate
User-Agent  Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host    xx.xx.xx.xx:8080
Content-Length  0
Proxy-Connection    Keep-Alive
Pragma  no-cache
Cookie  JSESSIONID=9FBA9758381235CD22974C796449747B

Response    HTTP/1.1 200 OK
Server  Apache-Coyote/1.1
Cache-Control   public, max-age=0, must-revalidate
Expires Mon, 18 Jan 2016 12:10:03 GMT
Content-Type    application/json;charset=UTF-8
Date    Mon, 18 Jan 2016 12:10:04 GMT
X-Cache MISS from PROXYNEW
X-Cache-Lookup  MISS from PROXYNEW:8080
Via 1.1 PROXYNEW (squid/3.2.3)
Connection  keep-alive

你能澄清“但仍然不起作用”吗?是否未进行HTTPRequest?没有结果吗?结果是否未正确解码?”但IE未能解密数据“你也在使用加密吗?”在问题本身中更新。对不起,如果我的帖子不清楚。在除IE9之外的所有浏览器中,响应数据大小为14.7KB,而在IE9中,响应数据大小为225KB,这是未压缩数据的大小!这就是我想说的。在IE响应中还有其他的头,不一定是X-Cache头,这似乎意味着中间有一个代理。是这样的吗?代理是否会减少响应?让我检查一下!但为什么缓存头会对gzip头产生影响呢?它们不会,但代理可能会。