【问题标题】:GZip Compression Not working in internet explorer 11, but working fine in Chrome & FirefoxGZip 压缩不能在 Internet Explorer 11 中工作,但在 Chrome 和 Firefox 中工作正常
【发布时间】:2016-03-04 12:55:04
【问题描述】:

公司,

我在 Spring Boot Embedded Tomcat 中使用 CompressingFilter (https://github.com/ziplet/ziplet) 和来自 Spring 的 FilterRegistrationBean 启用了 GZip 压缩。

在 Chrome 和 Firefox 中运行良好

  • 我在响应标头中得到 Content-Encoding = gzip
  • 传输的 JSON 数据大小从 6.5MB 减少到 1.2MB - 太好了 :-)

但是,相同的代码不能Internet Explorer 11.0.9600.18097 中运行。

在 Internet Explorer 中,

  • Content-Encoding = gzip 在响应标头中丢失
  • 传输的 JSON 数据大小仍仅为 6.5MB。

我在下面粘贴了我的标题 ( IE11 )。

谁能帮我解决这个问题?

更新: 请在下面找到 Chrome 标头。

【问题讨论】:

  • 对比请求头和chrome,看看有没有区别。在将请求转发到 tomcat 之前,您是否也在向 tomcat 发送可能检测 IE 并修改请求的内容?
  • @NG,请求标头没有区别,我也附上了我的 chrome 标头。我正在使用带有 Spring Boot 的 Embed Tomcat。无论如何,“在将请求转发到 tomcat 之前处理请求”与浏览器无关。那么它在 Chrome 和 Firefox 中是如何工作的呢?
  • 因为修改逻辑可以基于用户代理做一些事情。它通常是这样做的。
  • 我的 tomcat 前面没有任何服务器。

标签: spring spring-boot gzip internet-explorer-11


【解决方案1】:

Internet Explorer 的解压缩逻辑发生在开发者工具之下,因此您可能在开发者工具中看不到Content-Encoding。您应该考虑使用 Fiddler 来查看网络上的实际内容。

【讨论】:

【解决方案2】:

请查看link。它被作为一个问题提交,但微软出于某种原因决定不修复 IE11。他们在新的 Edge 浏览器中修复了它。

请查看提供的链接中的 cmets。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-13
    • 1970-01-01
    • 1970-01-01
    • 2015-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多