如何对一个NSURLConnection请求进行gzip压缩?

6
2个回答

5
HTTP请求体在协议层面上不能被压缩,因为客户端无法知道服务器是否支持它;对于服务器响应来说可以工作,因为客户端在请求中指示是否可以接受经过压缩的响应体。(将来可能会像Expect: 100-continue一样实现,但这不是我们今天面临的情况)。
在应用层面上,您当然可以压缩请求体。但这将超出NSURLConnection的范围。

有趣。你能展示一下如何使用gzip压缩请求并发送到NSURLConnection吗?或者,我需要使用另一个库,比如ASIHTTP,它支持对POST和PUT请求体进行gzip压缩 - ma11hew28

0

通常我更倾向于使用NSURLRequests而不是ASIHTTPRequests,但ASI确实可以处理这种情况。HTTP请求压缩并非总是安全可靠的。你无法确定服务器是否正确处理了这个路由。即使你已经设置好了Apache以正确处理它,但在进行不同模块的请求时仍可能失败,因为它们可能无法正确处理。

http://allseeing-i.com/ASIHTTPRequest/How-to-use#using_gzip_to_compress_request_bodies


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接