0

问题是,为什么 IE 会部分下载资源?

我们有一个应用程序使用了在 IE 11.0.9600 中无法正确显示的 bootswatch 字体。经检查,IE 报告下载的数据少于整个文件的大小。各种字形和字体没有正确显示,这似乎是有道理的,因为它们背后的数据永远不会到达。

通常,这些字体文件为 25KB 及以上,Internet Explorer 报告获取的数据量异常低,但使用 HTTP 200“一切都很好”。

这不是大多数/所有资源的普遍问题,只是 bootswatch(以及以前的 fontawesome)资源。

IE网络面板报告接收到的数据量异常低

检查 IE 和 curl 报告的标头(都作为 curl,并使用 curl 模拟 IE)表明服务器似乎做的一切都是正确的。curl、firefox 或 chrome 中不会出现此问题。

服务器响应的标头

编辑- 下面用户建议的进一步调查,我已经下载并使用了 fiddler,跟踪了连接 - fiddler 报告此请求没有 gzip 编码(这意味着我猜 IE 的 0.65KB 报告不太可能是压缩大小)。Fiddler 报告正确的文件大小,保存响应正文会生成正确文件的完美副本。fidder 一直在报告这个问题,IE 的网络窗口继续报告 25KB 文件中的 0.65KB,并且字形无法正常显示。有关故障排除的任何进一步建议?

4

1 回答 1

1

恕我直言,IE 报告的内容长度是未压缩的。如果您想真正查看收到的内容,请尝试安装 fiddler ( http://www.telerik.com/download/fiddler ) 或 WireShark。这是 IE 和 fiddler 中压缩 js 的示例:http: //i.stack.imgur.com/HaOwl.gif

您会看到压缩后的大小为 649 字节,而未压缩的大小为 6662(可能是您看到的差异)。

使用 fiddler,您可以保存内容并检查您的字体是否发送良好。只需右键单击资源行并选择:保存/响应/响应正文和浏览器保存文件的位置。

这样,您应该确保您的 IE 客户端和服务器之间的特定文件不会发生任何变化。

于 2015-07-09T15:42:18.327 回答