我目前正在将一个使用 ASIHTTPRequest 和 SBJson 的项目迁移到 RestKit。
之前的实现是使用 NSOperation 发出 HTTP 请求、解析 JSON 对象并对 Core Data API 进行必要的调用。
我已将其重新考虑如下:
@implementation UpdateBeers
#pragma mark - NSOperation
- (void)main {
[[RKClient sharedClient] get:@"/beers" delegate:self];
}
- (void)request:(RKRequest*)request didLoadResponse:(RKResponse*)response {
debug(@"didLoadResponse");
}
- (void)request:(RKRequest *)request didFailLoadWithError:(NSError *)error {
debug(@"%@", error);
}
#pragma mark - Memory
- (void) dealloc {
[super dealloc];
}
@end
日志中出现以下内容
向 URL http://localhost:9091/api/test发送 GET 请求。HTTP 正文:
问题是服务器永远不会收到请求。
添加以下行:
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.3]];
到最后主要方法解决了这个问题。
我的问题是:
我应该将 ResKit API 调用作为 NSOperation 执行吗?如果不是,我在后台进行调用的替代方法是什么?
提前致谢。