AFNetworking AFMultipartFormData如何设置密钥

时间:2012-04-07 17:35:42

标签: iphone objective-c ios afnetworking

我想像以前一样使用setkey“FileData”将(POST)图像上传到服务器(用ASIHTTPRequest编写并且可以正常工作)

[self.request setData:imageData withFileName:dateFormatted andContentType:@"image/jpeg" forKey:@"Filedata"];

使用AFNetworking我设置如下:

NSMutableURLRequest *afRequest = [httpClient multipartFormRequestWithMethod:@"POST" path:@"" parameters:paramsDic constructingBodyWithBlock: ^(id <AFMultipartFormData>formData) {
        [formData appendPartWithFileData:imageData name:@"Filedata" fileName:dateFormatted mimeType:@"image/jpeg"];
    }];

似乎名字实际上不起作用...... 我该如何设置密钥? @mattt

由于

2 个答案:

答案 0 :(得分:0)

我弄清楚了,问题是我添加了这一行

[afRequest setValue:@"application/x-www-form-urlencoded; charset=UTF8" forHTTPHeaderField:@"Content-Type"];

但我仍然不知道为什么,我将此行添加到其他http请求并且它可以工作,但是文件上传。我检查了服务器,什么时候用这行上传文件,服务器收到很多......嗯......想想怎么形容它,群发信件......如下:

  

内容类型:image / jpeg ^ M ^ M.   ÿØÿà^ @ ^ PJFIF ^ @ ^ A ^ A ^ @ ^ @ ^ A ^ @ ^ A ^ @ ^ @ YA ^ @ XExif ^ @ ^ @ MM ^ @ * ^ @ ^ @ ^ @ ^ H ^ @ ^ B ^甲^ R ^ @ ^ C ^ @ ^ @ ^ @ ^ A ^ @ ^ A ^ @ ^ @&LT; 87 I标记^ @ ^ d ^ @ ^ @ ^ @ ^ A ^ @ ^ @ ^ @

答案 1 :(得分:-1)

您好我正在上传音频/图片文件,请使用ASIHTTPRequest检查它并正常工作。

NSURL *audiourl = [NSURL URLWithString:@"Your Url"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:audiourl];
NSData *postData = [NSData dataWithContentsOfURL:SoundPath];
//SoundPath is your audio url path of NSDocumentDirectory.
[request addData:postData withFileName:@"mynewfile.png" andContentType:@"image/png"   forKey:@"FileData"];
[request setDelegate:self];
[request startasynchronous];

谢谢