我想弄清楚我的往返服务器的时间是多长时间才发生映射。我需要进入RKObjectRequestOperation,但它仅在成功和失败块中可用。
我看到RestKit 2确实发送了通知:
[[NSNotificationCenter defaultCenter] postNotificationName:RKObjectRequestOperationDidStartNotification object:weakSelf];
但是没有发送用户信息。
关于我如何做到这一点的任何想法?我在考虑将一个关联的对象放到操作队列上,但这会导致崩溃。
我做了什么:
self.op = self.objectManager.operationQueue.operations.lastObject;
objc_setAssociatedObject(self, &kRetrieverRequestOperationKey, self.op, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
在之后添加以上内容:
[self.objectManager getObjectsAtPath:resourcePath parameters:parmsDictionary success:^(RKObjectRequestOperation *requestOperation, RKMappingResult *mappingResult)
{
[weakSelf didLoadOperation:requestOperation result:mappingResult isFromCache:NO];
[weakSelf requestDidEnd:requestOperation];
} failure:^(RKObjectRequestOperation *requestOperation, NSError *error) {
[weakSelf requestOperation:requestOperation didFailWithError:error];
[weakSelf requestDidEnd:requestOperation];
}];
然后,当RestKit发布通知时,我能够获得RKObjectRequestOperation。 不理想,但似乎有效。