-
需求
在网络资源里直接放入一个json文件,直接用AFN请求。 -
坑
第一次请求成功,之后无限412错误。过一段时间可以成功请求到数据一次,继续无限412。 -
解决方式
google了一会,了解了一下412错误,推测是由于网络缓存机制引起的。
AFHTTPRequestSerializer里有个属性cachePolicy
@property (nonatomic, assign) NSURLRequestCachePolicy cachePolicy;
typedef NS_ENUM(NSUInteger, NSURLRequestCachePolicy)
{
NSURLRequestUseProtocolCachePolicy = 0,
NSURLRequestReloadIgnoringLocalCacheData = 1,
NSURLRequestReloadIgnoringLocalAndRemoteCacheData = 4, // Unimplemented
NSURLRequestReloadIgnoringCacheData = NSURLRequestReloadIgnoringLocalCacheData,
NSURLRequestReturnCacheDataElseLoad = 2,
NSURLRequestReturnCacheDataDontLoad = 3,
NSURLRequestReloadRevalidatingCacheData = 5, // Unimplemented
};
设置为NSURLRequestReloadIgnoringLocalAndRemoteCacheData,解决!
网友评论