Ios Restkit OndiFailwitheror从未接到过电话
我正试图发布一个带有block的对象Ios Restkit OndiFailwitheror从未接到过电话,ios,restkit,Ios,Restkit,我正试图发布一个带有block的对象OnDidFailWithError从未被调用,它就爆炸了 这是我得到的错误: 由于未捕获异常而终止应用程序 “NSInvalidArgumentException”,原因:“+[MyClass” objectLoader:didFailWithError::发送到类的选择器无法识别 这是我的代码: [[RKObjectManager sharedManager] postObject: myObj usingBlock:^(RKObjectLoader *l
OnDidFailWithError
从未被调用,它就爆炸了
这是我得到的错误:
由于未捕获异常而终止应用程序
“NSInvalidArgumentException”,原因:“+[MyClass”
objectLoader:didFailWithError::发送到类的选择器无法识别
这是我的代码:
[[RKObjectManager sharedManager] postObject: myObj usingBlock:^(RKObjectLoader *loader){
loader.targetObject = nil;
loader.delegate = (id)self;
loader.objectMapping = [[RKObjectManager sharedManager].mappingProvider objectMappingForClass:[MyClass class]];
loader.onDidFailWithError = ^(NSError *error) {
NSLog(@"Error %@", [error localizedDescription]);
};
loader.onDidLoadObject = ^(id obj) {
NSLog(@"Comment");
NSLog(@"%@",obj);
};
loader.onDidLoadResponse = ^(RKResponse *response) {
NSLog(@"Response: %@", [response bodyAsString]);
};
loader.onDidLoadObjects=^(NSArray* objects){
//post notification
[[NSNotificationCenter defaultCenter] postNotificationName:@"finish" object:nil];
};
loader.serializationMIMEType = RKMIMETypeJSON; // We want to send this request as JSON
loader.method = RKRequestMethodPOST;
loader.serializationMapping = [RKObjectMapping serializationMappingUsingBlock:^(RKObjectMapping* mapping) {
[mapping mapAttributes:@"field1", @"field2",nil];
}];
}];
如果无法处理此错误,请在onDidLoadResponse上尝试此操作
loader.onDidLoadResponse = ^(RKResponse *response) {
NSLog(@"Response did arrive");
if([response statusCode]>299){
NSError *error = nil;
id parsedResponse = [NSJSONSerialization JSONObjectWithData:[response body] options:NSJSONWritingPrettyPrinted error:&error];
NSLog(@"%@",parsedResponse);
}
};
您正在将委托设置为self,它将在当前控制器上调用这些RestKit委托方法,而不是使用您创建的块。Myclass是我不想在线披露的类的名称。我成功加载了对象,但无法处理错误。我只是编辑了答案,检查这是否有助于调试问题所在。