iOS - 是否可以缓存分块的HTTP响应?

时间:2015-03-31 03:05:47

标签: ios caching afnetworking chunked-encoding nsurlcache


我使用AFNetworking从后端获取数据,并将请求cachePolicy设置为NSURLRequestUseProtocolCachePolicy
响应标头包含ETag值,Transfer-Encodingchunked
Chunked Response

在第二次调用相同的API时,它会获取新数据,而不是按预期从缓存中获取。

我注意到如果响应没有分块(包含Content-Length标题),则缓存工作完全正常 not chunked response

我的问题是:是否可以在iOS 中缓存chunked响应?
感谢您的任何建议

1 个答案:

答案 0 :(得分:0)

AFNetworking用于缓存的

NSURLCache不支持缓存此类请求。

你可以尝试:

  • 使用SDURLCache,一种开源替代方案,为您提供更多控制权,或
  • 自己继承NSURLCache以推广自己的实现
  • 使用支持缓存标头的请求