使用 AFNetworking 后台上传大量图片

Posted

技术标签:

【中文标题】使用 AFNetworking 后台上传大量图片【英文标题】:Background upload of large number of images using AFNetworking 【发布时间】:2017-09-27 09:32:56 【问题描述】:

我正在寻找使用 AFNetworking 在后台上传大约 100 张图像,我需要创建一个操作队列吗?或者我可以像这样在 for 循环中创建多个请求:

    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    manager.responseSerializer.acceptableContentTypes = nil;
    [manager.requestSerializer setTimeoutInterval:30.0];

    for(MyImageView *myImageView in images)
        NSDictionary *parameters = _PARAMETERS;
        [manager POST:@"//MY_URL_" parameters:parameters
        constructingBodyWithBlock:^(id<AFMultipartFormData> formData) 
            [formData appendPartWithFileData:UIImageJPEGRepresentation(myImageView.image, 0.65) name:@"NAME" fileName:@"name" mimeType:@"image/jpeg"];
        progress:^(NSProgress * _Nonnull uploadProgress) 

         success:^(NSURLSessionTask *task, id responseObject) 
            NSDictionary *response = (NSDictionary *)responseObject;
            dispatch_async(dispatch_get_main_queue(), ^
                int success = [[response objectForKey:@"success"] intValue];
                if(success == 1) 
                    NSLog(@"IMAGE UPLOAD SUCCESSFULL");
                
                else if (success == 0)
                    NSLog(@"IMAGE UPLOAD FAILED");
                
                NSLog(@"%@",response);
            );
         failure:^(NSURLSessionTask *operation, NSError *error) 
            NSLog(@"%@",error.localizedDescription);
        ];
    

如果需要,我如何创建 NSOperations 队列?

谢谢

【问题讨论】:

***.com/questions/34753816/… 【参考方案1】:

使用 AFHTTPRequestOperationNSOperarationQueueNSOperationQueueDefaultMaxConcurrentOperationCount

【讨论】:

AFHTTPRequestOperation 在 3.0 中不可用 然后看这个searchingmymojo.com/2017/03/17/… 我正在寻找上传图片...任何相关链接? NSURLSession 现在负责这个 github.com/samwang0723/URLSessionUpload/blob/master/…检查第28行

以上是关于使用 AFNetworking 后台上传大量图片的主要内容,如果未能解决你的问题,请参考以下文章

iOS上传图片问题

用AFNetworking上传图片

iOS开发通过AFNetworking上传图片到服务器

iOS--AFNetWorking 上传图片到服务器

如何使用 Afnetworking 在 ios 中在后台上传图像

AFNetworking 进入后台后继续上传