使用restkit发送HTTPBody数据
我正在使用名为“Poster”的 Firefox 工具来检查我的网络服务是否正常工作。当我发布请求时,我在要发送的内容中发送一个 JSON 对象(也称为 HTTP 正文数据)。
当我按下 POST 按钮时,结果很好。
现在我想对 RestKit:
NSString *squery = @"{\"Sort\":\"Relevance\",\"DaysToSearch\":0,\"WorkType\":\"\",\"PageSize\":20,\"LastRunCount\":0,\"IndustryCodes\":[\"\"],\"AccountId\":27,\"Experience\":\"\",\"GetResultCount\":0,\"Keywords\":\"iOS\",\"PageIndex\":0,\"DistanceFromLocation\":\"250\",\"SalaryType\":\"\",\"JobQueryId\":\"\",\"JobTitleCodes\":[\"\"]}";
RKObjectLoader *objectLoader = [[RKObjectManager sharedManager] objectLoaderWithResourcePath:url delegate:performJobQueryHandler];
objectLoader.method = RKRequestMethodPOST;
objectLoader.objectMapping = s.jobQueryDataMapper;
objectLoader.HTTPBody = [squery dataUsingEncoding:NSUTF8StringEncoding];
objectLoader.serializationMIMEType = RKMIMETypeJSON;
[objectLoader send];
结果我得到:“发生了非故障异常。”
在 FireFox 扩展“Poster”中,如果我使用与“application/json”不同的矿井类型,比如说“application/x-www-form-urlencoded”,我会得到相同的错误:“发生了非故障异常。 ”
objectLoader.serializationMIMEType = RKMIMETypeJSON; 有问题吗? ???
马丁·马加基安
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好吧,我想我知道了。
我激活了 RestKit 调试
我得到:
所以我认为使用 RKObjectLoader 对象不关心 objectLoader.serializationMIMEType = RKMIMETypeJSON;因为Content-Type仍然是“Content-Type”=“application/x-www-form-urlencoded”;而不是“Content-Type”=“application/json”;
您认为这是一个错误还是正常行为?
Ok I think I find out.
I activated RestKit debug with
And I get:
So I think using RKObjectLoader object don't care about objectLoader.serializationMIMEType = RKMIMETypeJSON; because the Content-Type remain "Content-Type" = "application/x-www-form-urlencoded"; instead of "Content-Type" = "application/json";
Do you think it's a bug or the normal behavior ?