如何使用 Restkit 发送表单数据类型请求
Posted
技术标签:
【中文标题】如何使用 Restkit 发送表单数据类型请求【英文标题】:How to send the form data type request using Restkit 【发布时间】:2016-05-01 16:41:55 【问题描述】:数据格式:
"firstName": "arun",
"lastName": "kumar",
"contactInfo":
"email": "ak7896@gmail.com"
,
"password": "abcdefg"
以上是我的注册请求结构。除了data
键,我还有一个用于profilepic
图像的键,名为“main”。目前,我正在创建的请求字典中使用 RestKit,如下所示:
[RKObjectManager sharedManager] postObject:self path:self.path_api parameters:@"data":@ @"firstname":firstname, @"lastname":lastname, @"contactInfo": @@"email":emailID, @"password":pass
@"main": @@"profileImage": profilePic? profilePic : nil
但它会抛出错误 500。我认为我在这里创建的字典不正确。
任何建议都会对我很有帮助。
提前致谢
【问题讨论】:
您还没有告诉我们实际发送了什么或服务器期望什么,new 需要知道这两者,以及服务器在错误中返回的任何其他详细信息 URL: myURL 状态码: 500, headers Connection = close; “内容长度”= 22; “内容类型”=“文本/html;字符集=utf-8”;日期 =“星期日,2016 年 5 月 1 日 16:54:55 GMT”;服务器 = "Apache/2.4.7 (Ubuntu)"; Vary = "接受编码,用户代理"; “X-Content-Type-Options”= nosniff; “X-Powered-By”=快递; , NSLocalizedDescription=(200-299) 中的预期状态码,得到 500 如何使用restkit创建带有表单数据的上述请求结构,即如何创建像我上面的请求结构一样的多表单请求。 您的问题显示的是 JSON,而不是表单 数据 "firstName": "arun", "lastName": "kumar", "contactInfo" : "email": "ak7896@gmail.com","password": "abcdefg " main *注意 - 上面的输入是表单数据格式,其中“数据”和“主”是键。 【参考方案1】:您的字典似乎格式不正确,应该是这样的
[[RKObjectManager sharedManager] postObject:self path:self.path_api parameters:@@"data":@@"firstname":firstname, @"lastname":lastname, @"contactInfo": @@"email":emailID, @"password":pass, @"main": @@"profileImage": profilePic? profilePic : nil];
如果不需要数据键,应该是
[[RKObjectManager sharedManager] postObject:self path:self.path_api parameters:@@@"firstname":firstname, @"lastname":lastname, @"contactInfo": @@"email":emailID, @"password":pass, @"main": @@"profileImage": profilePic? profilePic : nil];
【讨论】:
我的请求如下所示: request.body : @ @"name":@@"firstname":firstname, @"lastname":lastname, @"contactInfo": @ @"email":emailID, @"password":pass 但在服务器端,它需要以下形式的数据: request.body.data : @ @"name":@@"firstname":firstname, @" lastname":lastname, @"contactInfo": @@"email":emailID, @"password":pass 现在使用表单数据我不知道如何构造这个请求。 那么你应该使用这个方法发送表单数据multipartFormRequestWithObject:method:path:parameters:constructingBodyWithBlock
我目前使用的是相同的,但需要将请求正文作为 request.body.data 发送,其中数据是表单数据字典之一的关键。
你检查过 github 上的文档吗?检查此链接github.com/RestKit/…
已经有任何表单数据在正文中发送,您不需要将对象添加到正文键中以上是关于如何使用 Restkit 发送表单数据类型请求的主要内容,如果未能解决你的问题,请参考以下文章
如何过早取消 RestKit 中的请求并调用“didFailWithError”
如何在邮递员的同一请求中发送多部分/表单数据和嵌套 json?