AFNetworking将文件上传到服务器,参数

时间:2012-01-31 04:57:55

标签: objective-c afnetworking

我正在尝试上传文件:

   NSMutableDictionary * lParameters = [NSMutableDictionary dictionary];
   [lParameters setObject:@"temp.jpg" forKey:@"file"];

  NSMutableURLRequest *request = [self multipartFormRequestWithMethod:@"POST" path:@"uploads/add.json" parameters:lParameters constructingBodyWithBlock: ^(id <AFMultipartFormData>formData)
  {
    NSData * data = [NSData dataWithContentsOfFile:filePath];
    [formData appendPartWithFileData:data name:@"temp.jpg" fileName:@"temp.jpg" mimeType:@"image/jpeg"];
  }];

  AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request
success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON){
  ....

我的上传json看起来像这样:

http://base/url/uploads/add.json

只有一个参数“file”。 服务器返回错误:“未指定强制参数:文件”。 我该如何设置参数。为什么不起作用:

   NSMutableDictionary * lParameters = [NSMutableDictionary dictionary];
   [lParameters setObject:@"temp.jpg" forKey:@"file"];

请帮助。

1 个答案:

答案 0 :(得分:2)

您可能不应该在参数字典中设置temp.jpg。相反,请尝试将name中的appendPartWithFileData:...设置为file

如果不能解决问题,请提供与错误对应的服务器的回溯。