我正在使用AFImageRequestOperation
从我的服务器下载数百个jpg。
NSURLRequest *request = [NSURLRequest requestWithURL:theURL cachePolicy:NSURLCacheStorageNotAllowed timeoutInterval:20];
AFImageRequestOperation *operation;
operation = [AFImageRequestOperation imageRequestOperationWithRequest:request
imageProcessingBlock:nil
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {}
failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {}
];
operation.outputStream = [NSOutputStream outputStreamToFileAtPath:[[paths objectAtIndex:0] stringByAppendingPathComponent:picture] append:NO];
[downloadQueue addOperation:operation];
如果我现在要取消正在进行的下载,请执行[downloadQueue cancelAllOperations]
。
使用我之前使用的AFNetworking的早期版本(今年早些时候),这种方法很完美但是最近的版本我得到了这个:
ERROR [http://myImageURL] -- The operation couldn’t be completed. (NSURLErrorDomain error -999.)
用于所有待处理的操作。 我现在必须做一些额外的事吗?
答案 0 :(得分:0)
在NSURLErrorDomain
中,该错误代码定义如下:
kCFURLErrorCancelled = -999
......这是有道理的,因为操作确实被取消了。这不是错误,而是预期的行为。更改可能是对AFNetworking的文档更改,也可能是iOS版本之间NSURLConnection
中未记录的更改。