ios - 通过 POST 方法发送带有其他参数的图像

标签 ios objective-c image-uploading

我已经编写了一个代码来按用户在网络中添加项目并且它工作正常..现在我想添加另一个参数即图像..我无法这样做..我的代码是

NSString *posturslString= [NSString stringWithFormat:@"ToDo_Item=%@&ToDo_Date=%@&AddedBy=%i",self.ToDo_Item, [dateformatter stringFromDate:self.ToDo_Date],self.AddedBy];
NSString *postData = [[NSString alloc] initWithString:posturslString];


[request setValue:@"application/x-www-form-urlencoded; charset=utf-8" forHTTPHeaderField:@"Content-Type"];


[request setHTTPBody:[postData dataUsingEncoding:NSUTF8StringEncoding]];


NSURLResponse *response = [[NSURLResponse alloc] init];

self.receivedData =[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];

NSError * error;
NSDictionary *user = [NSJSONSerialization JSONObjectWithData:self.receivedData
                                                     options:0
                                                       error:&error];

NSNumber *successNumber =  [user objectForKey:@"success"];
success = [successNumber integerValue];

我如何发送图像,即 nsdata

NSData *png=UIImagePNGRepresentation(self.itemImage.image);

以及我的其他参数。请帮忙。

最佳答案

base64Encoded 格式转换您的图像

NSData *imageData = UIImageJPEGRepresentation(uploadImage, 1.0);
NSString *base64String = [imageData base64EncodedStringWithOptions:kNilOptions];
NSString *encodedString2 = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes( NULL,  (CFStringRef)base64String,    NULL,   CFSTR("!*'();:@&=+$,/?%#[]\" "),   kCFStringEncodingUTF8));

并添加与其他关键字相同的图片

NSString *posturslString= [NSString stringWithFormat:@"ToDo_Item=%@&ToDo_Date=%@&AddedBy=%i&image=%@",self.ToDo_Item, [dateformatter stringFromDate:self.ToDo_Date],self.AddedBy,encodedString2];

注意:-还需要在服务器端实现图像base64Encoded的转换

关于ios - 通过 POST 方法发送带有其他参数的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32753465/

相关文章:

laravel - 传递的参数 1 必须是 App\Request 的实例,给出的 Illuminate\Http\Request 的实例

ios - XCode 和 Facebook IOS SDK - 说明不正确

ios - 无法关闭通过单击 UITextVIew 中的邮件链接显示的 MFMailComposeViewController(iOS 8 测试版错误)

iOS - 带有圆形手势的图像裁剪

ios - 从另一个选项卡调用 popToRootViewController

php - 文件上传 - 违反完整性约束 : 1062 Duplicate entry '1' for key 'PRIMARY

javascript - 在 Node.js 中使用多方包时出现 ERR_EMPTY_RESPONSE 错误

ios - UIImagePickerController 崩溃 AVErrorUnknown=-11800

ios - 以 json 格式返回国家列表的 URL

ios - 在 Swift 3 中创建与 super View 相同大小的 View