我正在使用 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");
}
}];
知道为什么会这样吗?
只有在我使用基于 block 的函数调用时才会发生这种情况。
当我使用 setImageWithURL 时,一切正常
最佳答案
UIImageView+AFNetworking 使用内部缓存来优化 ScrollView 和表格 View 的性能。响应代码 0 表示图像未发出 HTTP 请求就从内部缓存中出来。您不需要在 success 中检查状态代码是否为 200,因为这已经是成功/失败区别正在做的事情。
关于iphone - AFNetworking UIImageView setImageWithURLRequest 返回响应代码 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10418381/