如果我使用restkit发出请求,我可以使用共享客户端发送post参数。 我怎样才能做到共享对象管理器一样,似乎没有功能发布数据时请求对象。Restkit,使用loadObjectsAtResourcePath发送post数据
再次重申,我期待发送一些数据后,当我使用loadObjectsAtResourcePath
感谢
如果我使用restkit发出请求,我可以使用共享客户端发送post参数。 我怎样才能做到共享对象管理器一样,似乎没有功能发布数据时请求对象。Restkit,使用loadObjectsAtResourcePath发送post数据
再次重申,我期待发送一些数据后,当我使用loadObjectsAtResourcePath
感谢
必须使用loadObjectsAtResourcePath?下面是我使用POST请求发送到我的服务器
RKParams* params = [RKParams params];
[params setValue:@"The text" forParam:@"text"];
RKClient* myClient = [RKClient sharedClient];
[myClient post:resourceURL params:params delegate:self];
,你会得到你的反应回来
- (void)request:(RKRequest *)request didLoadResponse:(RKResponse *)response
PS:刚发现此链接:https://github.com/RestKit/RestKit/wiki/Posting-NSDictionary-as-JSON
我必须使用loadOBjectsResourcePath,因为我做了一些json映射,我不确定是否可以在不使用loadObjectsAtResourcePath的情况下完成json映射。感谢您指出,但我已经成功发布数据,只是我不知道如何使用loadObjectsAtResourcePath – Veeru 2012-04-27 03:42:13
我没有尝试过,但用我的方法,你会得到你的“ - (void)请求: (RKRequest *)请求didLoadResponse:(RKResponse *)response“调用并从那里你应该能够调用[response parsedBody]文档说:”返回解析为JSON的响应体到一个对象中“值得一试。 。 – 2012-04-27 09:03:12
RKClient * myClient = [RKClient sharedClient]; [myClient post:resourceURL params:params delegate:self]; - 不会像loadObjectsAtResourcePath那样很好地解析和返回对象 – ugiflezet 2012-06-09 19:09:22
可以使用块风格对象加载器来定制请求:
[[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/monkeys.json" usingBlock:^(RKObjectLoader* loader) {
loader.objectMapping = [[RKObjectManager sharedManager].mappingProvider objectMappingForClass:[Monkey class]];
loader.method = RKRequestMethodPOST;
}];
https://github.com/RestKit/RestKit/blob/master/Code/ObjectMapping/RKObjectManager.h#L374
感谢信息jverdi,但由于某种原因,我不能使用该方法。它不断抛出错误,我甚至更新了我的RestKit,因为它看起来像是最近添加的。任何帮助? – Veeru 2012-04-29 07:03:54
[objManager loadObjectsAtResourcePath:url委托:self block:^(RKObjectLoader * loader){DDLKVerbose(@“从url%映射对象%@”,url); loader.objectMapping = postMapping; loader.method = RKRequestMethodPOST; RKParams * params = [RKParams params]; [params setValue:@“iPhone3u48gn39bndkthb34528dgbnjs398shbg34”forParam:@“token”]; loader.params = params; }]; 上面的代码不起作用,块内部的代码似乎没有被执行。 – Veeru 2012-04-29 14:19:24
如何取消此请求? http://stackoverflow.com/questions/11499281/using-restkit-use-block-to-load-object-when-and-how-to-cancel-the-request – jeswang 2012-07-16 06:49:51
正如jverdi指出的,我已经采用的块试过,但一点儿也不块内任何代码似乎被执行 [objManager loadObjectsAtResourcePath:URL代表:自身块:^(RKObjectLoader *装载机){DDLogVerbose( @“从url%@映射对象”,url); loader.objectMapping = postMapping; loader.method = RKRequestMethodPOST; RKParams * params = [RKParams params]; [params setValue:@“iPhone3u48gn39bndkthb34528dgbnjs398shbg34”forParam:@“token”]; loader.params =参数; }]; – Veeru 2012-04-29 14:39:11