Người đàn ông, bối rối về điều này. Đang cố gắng tải xuống tệp có số AFNetworking và tốt nhất tôi có thể làm là ghi lại các byte tiến trình trong tệp tải xuốngProjectBlock. Tôi đã thử nhiều nhánh khác nhau của AFNetworking và bây giờ tôi đã quay lại bản dựng mới nhất. Có vẻ như một lúc AFHTTPRequestOperation đã được sửa đổi để bao gồm cả NSURLResponse nhưng nó đã biến mất trong bản phát hành mới nhất. Và, theo mã bên dưới, khối "thành công" không bao giờ được gọi. Tôi nhận được một bản ghi của các byte tải về và sau đó^hoàn thành được gọi là. thành công và lỗi không bao giờ được gọi.AFNetworking - Sử dụng AFHTTPRequestOperation để tải xuống tệp?
Mọi hướng dẫn về điều này sẽ thật tuyệt vời. Tôi không thể tìm ra nơi dữ liệu được trả về và làm thế nào để có được nó để sử dụng NSFileManager trên nó? Tôi cần tải xuống tệp, không viết luồng cho hình ảnh, v.v.
Chỉnh sửa: Tôi cũng đã cố gắng ghi dữ liệu bằng cách ghi đè - (void) connection: didReceiveData như được đề xuất trong tài liệu nhưng không có gì ở đó.
// url là http://mydomain.com/somezip.zip
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@", url]]];
AFHTTPRequestOperation *operation = [AFHTTPRequestOperation HTTPRequestOperationWithRequest:request success:^(id object) {
NSLog(@"hey, some success!");
} failure:^(NSHTTPURLResponse *response, NSError *error) {
NSLog(@"%@", error);
}];
[operation setDownloadProgressBlock:^(NSInteger bytesRead, NSInteger totalBytesRead, NSInteger totalBytesExpectedToRead) {
// callback is sent in and works great. Just outputting to the console at the moment
SEL callme = NSSelectorFromString(callback);
[sender performSelectorOnMainThread:callme withObject:[NSNumber numberWithInt:bytesRead] waitUntilDone:NO];
}];
[operation setCompletionBlock:^{
NSLog(@"operation complete");
}];
NSOperationQueue *queue = [[[NSOperationQueue alloc] init] autorelease];
[queue addOperation:operation];
Ai đó cung cấp cho người đàn ông này một phiếu bầu tán thành! Và OP nên chọn câu trả lời! – radj