我已经阅读了如何NSURLConnection
自动解压缩压缩(压缩)资源,但是我无法在任何地方找到 Apple 文档或官方词来指定定义此解压缩发生时间的逻辑。我也很想知道这与流数据有何关系。
问题
我相信,我有一台服务器使用分块编码将文件流式传输到我的应用程序。这是 WCF 服务。顺便说一句,我们使用流媒体是因为它可以在高使用率期间减轻服务器负载,而且因为我们的文件将非常大(100 MB)。这些文件可以被压缩或未压缩。我认为在我的情况下,因为我们正在流式传输数据,所以Content-Encoding
标头不可用,Content-Length
. 我只"Transfer-Encoding" = Identity
在我的回复中看到。
我正在使用该AFNetworking
库将这些文件与AFHTTPRequestOperation
'sinputStream
和outputStream
. 我也尝试过使用AFDownloadRequestOperation
类似的结果。
现在,AFNetworking
文档说明压缩文件将NSURLConnection
在下载后自动解压缩(我相信是通过 ),而这并没有发生。我将它们写入我的文档目录,没有任何问题。然而,它们仍然是拉链的。我也可以手动解压缩它们。所以文件没有损坏。他们不会自动解压缩,因为我正在传输数据并且Content-Encoding
没有指定吗?
我想知道的:
- 为什么我的压缩文件没有自动解压?是因为流媒体吗?我知道之后我可以使用另一个库来解压缩,但如果可能的话,我想避免这种情况。
- 什么时候
NSURLConnection
知道什么时候自动解压下载的文件?我在任何地方的文档中都找不到这个。这是否与标头值相关联?
任何帮助将不胜感激。