gpt4 book ai didi

javascript - GZIP是浏览器自动解压的吗?

转载 作者:IT王子 更新时间:2023-10-29 04:38:42 25 4
gpt4 key购买 nike

我已经通过以下网址在 IIS 8.0 中启用了 gzip 压缩 Enabling Gzip in IIS on Windows 8我正在通过 jquery ajax 调用和 C# 代码从我的应用程序调用外部休息服务,目前我的外部 Web 服务不是 gzip 压缩的。如果我要求我的服务合作伙伴对他们的响应进行 gzip 压缩,我是否需要在 jquery 端和 C# 端的代码中编写任何解压逻辑或浏览器自动为我解压响应?

最佳答案

所有现代浏览器都可以处理 gzip 编码的响应。事实上,如果您查看他们的请求,他们会有一个 header ,上面写着类似 Accept-Encoding: gzip 的内容,这是他们告诉服务器他们可以处理 gzip 响应的方式.

重要的是您的服务器可以返回 gzip 和未压缩的响应,具体取决于该 header 的存在和值。如果客户端不发送 Accept-Encoding header ,则不应压缩它。如果客户端确实发送了它,您可以选择使用 gzip 对响应进行编码。并非所有内容都需要压缩,因为它可能已经被压缩并且您正在浪费 CPU 周期。 JPEG 图像通常就是一个很好的例子。最有可能的是,IIS 也在此处做出明智的决定,并且只在必要时压缩必要的内容。

您可以通过查看从您的服务器返回的响应 header 并查找 Content-Encoding: gzip header 来验证 IIS 是否正在执行它应该执行的操作。这告诉客户端或浏览器,内容是使用 gzip 压缩编码的,它应该适本地解压缩。

所有基于浏览器的请求(例如,XHR/AJAX/jQuery、常规请求)都将自动解压缩,您无需额外操作。浏览器是负责确定它是否可以处理 gzip 的客户端,如果可以,将添加 Accept-Encoding header 。您的 JavaScript 代码将在您的响应处理程序中收到它的未压缩版本。

TL;DR:打开它通常是个好主意,您不需要做额外的工作。

关于javascript - GZIP是浏览器自动解压的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32172704/

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