【发布时间】:2017-02-16 10:59:51
【问题描述】:
上传带有其他参数的图像时出现问题。使用 AFNetworking 3.0
com.alamofire.serialization.response.error.data=,NSLocalizedDescription=请求失败
}NSMutableDictionary *getUpdates= [[NSMutableDictionary alloc]init];
NSString*userID=@"3";
[getUpdates setObject:userID forKey:@"userId"];
[getUpdates setObject:phoneNumTF.text forKey:@"mobileNumber"];
[getUpdates setObject:nameTF.text forKey:@"name"];
[getUpdates setObject:workZipCodeTF.text forKey:@"work"];
[getUpdates setObject:homeZipCodeTF.text forKey:@"home"];
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
[manager POST:kUpdateProfile_Post parameters:getUpdates constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
[formData appendPartWithFileData:ImageData
name:@"files"
fileName:@"picture" mimeType:@"image/jpeg"];
} progress:nil success:^(NSURLSessionDataTask *task, id responseObject) {
NSLog(@"Response: %@", responseObject);
} failure:^(NSURLSessionDataTask *task, NSError *error) {
NSLog(@"Error: %@", error);
}];
这里我需要发送这样的数据 图片:文件名 json:{ "name": "harish", "work": 92121, "userId": 3, "mobileNumber": 33663366, "home": "500025" }
有什么帮助吗?
【问题讨论】:
-
您能否更具体地说明您所面临的错误?
-
失败:内部服务器错误 (500)
-
好吧,如果是 500,那么在大多数情况下,它是服务器端问题,而不是应用程序。您应该验证其他客户端(android/web)是否能够上传图片。
-
Android端完成。他们已成功实施更新配置文件
-
"{"status":"FAILURE","statusCode":500}",这是您服务器的响应(您未序列化的数据内容)。向您的服务器询问可能出了什么问题。
ImageData是如何构造的? base64编码?从 Android 端检查代码,看看有什么不同,尝试使用相同的图像,检查参数、数据等。
标签: ios objective-c iphone afnetworking afnetworking-3