【发布时间】:2016-08-23 10:35:09
【问题描述】:
我正在尝试上传用户选择的图像数组。它们是 base64 编码的。我收到来自服务器的空响应。下面是我的代码。
for (PHAsset *asset in assets) {
[manager requestImageForAsset:asset targetSize:PHImageManagerMaximumSize contentMode:PHImageContentModeDefault options:self.requestOptions resultHandler:^void(UIImage *image, NSDictionary *info) {
NSString *encodeStr = [UIImagePNGRepresentation(image) base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithCarriageReturn];
[images addObject:encodeStr];
}];
}
我正在使用 QBImagePickerController 从委托中获取图像。我有一个 NSMutableDictionary 作为 NSMutableURLRequest 的正文内容。
[uploadObject setValue:@"32" forKey:@"userid"];
[uploadObject setValue:TFname.text forKey:@"Name"];
[uploadObject setObject:images forKey:@"SelectedImages"];
JSONData = [NSJSONSerialization dataWithJSONObject:uploadObject options:NSJSONWritingPrettyPrinted error:nil];
这里是NSMutableURLRequest
request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:@"JSON" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:JSONData];
我收到一个服务器响应代码 500 和来自服务器的空响应。我已经尝试过NSURLSessionDataTask 和NSURLSessionUploadTask。
任何帮助都会有好处!
【问题讨论】:
-
你能告诉我们你的网址格式吗?
-
NSURL *url = [NSURL URLWithString:uploadURL];,uploadURL = @"www.xxx.com";这是网址。 -
图片应作为多部分表单数据上传!!不像 base64Encoded 字符串!!
-
参考this ..它可能会有所帮助
标签: ios uiimage nsurlsession nsurlsessiondatatask nsurlsessionuploadtask