我正在使用AFNetworking的UIImageView类别,我在响应代码状态中不断收到响应代码0。知道为什么会这样吗?我是这样做的:
[self.newsPicture_ setImageWithURLRequest:storyImageRequest
placeholderImage:nil
success:^(NSURLRequest * request, NSHTTPURLResponse * response, UIImage * image) {
if ([response statusCode] == 200){
dispatch_async(dispatch_get_main_queue(), ^(void){
});
} else {
NSLog(@"RESPONSE ERROR WITH CODE IS %d", [response statusCode]);
}
}failure:^(NSURLRequest * request, NSHTTPURLResponse * response, NSError * error){
if (error){
NSLog(@"Error in requesting news story image");
}
}];
知道为什么会这样吗?
仅当我使用基于块的函数调用时才会发生这种情况。
当我使用setImageWithURL时,一切正常
答案 0 :(得分:8)
UIImageView+AFNetworking
使用内部缓存来优化滚动视图和表视图中的性能。响应代码为0表示图像来自该内部缓存而不发出HTTP请求。您不应该在success
中检查状态代码是否为200,因为这已经是成功/失败的区别。