相关疑难解决方法(0)

我需要在单个流媒体请求中使用AFNetworking将大量文件(最多100个)上传到服务器,这可以为我提供上传进度

使用AFNetworking 2.0时,我遇到了一些关于流媒体请求的挑战.

我想将大量文件(~50MB)上传到服务器,并且请求必须要流式传输.(否则app会因内存压力而崩溃)

我已尝试过各种方法在AFNetworking 2.0中做到这一点而没有任何成功.这就是我目前正在做的事情:

NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:baseServiceUrl parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
    int imageIndex = 0;
    for (NSURL *tempFileUrl in tempFilesUrlList) {
        NSString* fileName = [NSString stringWithFormat:@"image%d", imageIndex];
        NSError *appendError = nil;
        [formData appendPartWithFileURL:tempFileUrl name:fileName error:&appendError];
        imageIndex++;
    }
} error:&error];

AFHTTPRequestOperation *requestOperation = nil;
requestOperation = [manager HTTPRequestOperationWithRequest:request success:^(AFHTTPRequestOperation *operation, id responseObject) {
    DLog(@"Uploading files completed: %@\n %@", operation, responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    DLog(@"Error: %@", error);
}];

[requestOperation setUploadProgressBlock:^(NSUInteger bytesWritten, long long totalBytesWritten, …
Run Code Online (Sandbox Code Playgroud)

http-streaming ios afnetworking-2 nsurlsessiontask

8
推荐指数
1
解决办法
1217
查看次数

后台会话不支持从NSData上载任务

我正在尝试使用Share扩展上传图像,但问题是当我添加后台任务时它给了我这个错误,它说在后台任务中不支持nsdata但是wwdc会话正在nsdata中上传图像.你能告诉我问题在哪里吗?以及我如何解决它

后台会话不支持从NSData上载任务

NSString *boundary = @"SportuondoFormBoundary";

NSString * configurationName = @"com.xxxxxxxx.PhotoSharing.backgroundConfiguration";

NSURLSessionConfiguration *configuration= [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:configurationName];
[configuration setSharedContainerIdentifier:kGroupNameToShareData];


configuration.HTTPAdditionalHeaders = @{
                                        @"api-key"       : @"55e76dc4bbae25b066cb",
                                        @"Accept"        : @"application/json",
                                        @"Content-Type"  : [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary]
                                        };

NSURLSession *session=[NSURLSession  sessionWithConfiguration:configuration delegate:self delegateQueue:nil];


NSMutableData *body = [NSMutableData data];


for (NSString *key in parameters)
{
    [body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n\r\n", key] dataUsingEncoding:NSUTF8StringEncoding]];
    [body appendData:[[NSString stringWithFormat:@"%@\r\n", [parameters objectForKey:key]] dataUsingEncoding:NSUTF8StringEncoding]];

}

NSData *imageData = UIImageJPEGRepresentation(image, 0.8);
NSLog(@"imageDATE, %@", imageData);
if (imageData) …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c ios

4
推荐指数
1
解决办法
3825
查看次数