如果网络服务器可以发送 gzip 响应,为什么浏览器不能发送 gzip 请求?
客户端和服务器必须就如何通信达成一致;其中一部分是通信是否可以被压缩。 HTTP 被设计为请求/响应模型,最初的创建几乎可以肯定地设想总是有小请求和潜在的大响应。压缩不是required要实现HTTP,有服务器和客户端都不支持它。
HTTP 压缩是由客户端实现的,表示它可以支持压缩,如果服务器在请求中看到这一点并且它支持压缩,则可以压缩响应。要压缩请求,客户端必须有一个“预请求”,该“预请求”实际上协商请求将被压缩,或者必须要求压缩作为所有请求的受支持编码。
* 2017 年 2 月更新 *已经过去 8 年了,但正如 @Phil_1984_ 指出的,第三种可能的解决方案是客户端和服务器协商压缩支持,然后将其用于后续请求。事实上,像 HSTS 这样的东西就是以这种方式与客户端缓存一起工作的,服务器期望只使用 TLS 并忽略任何未加密的链接。 HTTP 被明确设计为无状态的,但我们现在已经超越了这一点。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)