RestKit发布请求参数MIMEType

时间:2014-02-11 00:12:36

标签: ios restkit

我正在使用在RestKit .10中实现的iOS应用程序,并将其更新为.20。应用程序发出的一个帖子请求有一个数据块作为参数。以前,应用程序对此编码使用RKParam setData:MIMEType:forParam;我正在寻找.20版本,用于向NSMutableDictionary参数添加参数。

旧代码:

  NSString *logString; // loaded up elsewhere

  NSData *textFileContentsData = [logString dataUsingEncoding:NSUTF8StringEncoding];

  RKParams *params = [RKParams params];

  [params setData: textFileContentsData MIMEType:@"text/plain" forParam:@"log_file"];

新代码:

NSMutableDictionary *parameters = [NSMutableDictionary dictionary];


[parameters setObject:???? forKey:@"log_file"];  // not sure how to get string here.

我已经尝试将textFileContentsData NSData对象放入????但是数据以二进制形式到达,这不是必需的。我需要弄清楚如何保留text / plain MIMEType。

TIA

Janene

1 个答案:

答案 0 :(得分:0)

根据您的描述,我不会使用RestKit,因为没有映射,我会使用AFNetworking(车载包含在RestKit中,因此您已经拥有完全访问权限。)

使用RestKit,您可以使用对象管理器创建发送请求,例如:

NSMutableURLRequest *request =
        [objectManager multipartFormRequestWithObject:nil
                                               method:RKRequestMethodPOST
                                                 path:@"..."
                                           parameters:nil
                            constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
                                [formData appendPartWithFormData:...
                                                            name:@"..."];

        }];

然后您可以使用RKObjectRequestOperation来处理请求。但是我不相信如果您只想设置mime类型(只是标题)和帖子数据,这正是您所需要的,这两者都可以直接在NSMutableURLRequest上完成。