我最近更新了RestKit从0.20.3到版本0.22。 我更新了日期格式化程序等,一切工作正常,除了两个网址。升级到0.22后RestKit问题
现在,我的两个POST请求未能找到响应描述符。 我有一个“没有响应描述符匹配加载的响应”错误,列出我的每个RKObjectManager上的响应描述符。并特别是以下行:
<RKResponseDescriptor: 0x1edf4f00 baseURL=https://mybaseurl/ pathPattern=transfer/execute statusCodes=200-299> failed to match: response path 'transfer/execute' did not match the path pattern 'transfer/execute'.
有人可以指导我,我可以错过的移植指南? 如果我调试把断点放在它试图找到响应描述符的地方,然后我去了- (BOOL)gatherParameterValues:(NSArray**)pValues fromString:(NSString *)string
,我得到了一个YES来执行传输/执行,所以我真的不知道它在哪里断了。
它也好像mappingsDictionary上RKMapperOperation是主要方法空...
编辑
// POST Requests
#pragma mark [POST] transfer/execute
{
// execute transfer
NSString *pathPattern = @"transfer/execute";
// route
[manager.router.routeSet
addRoute:[RKRoute routeWithClass:[Transfer class]
pathPattern:pathPattern
method:RKRequestMethodPOST]];
// request
RKMapping *requestMapping = [self.mappingProvider transferMapping];
RKRequestDescriptor *requestDescriptor = [RKRequestDescriptor
requestDescriptorWithMapping:requestMapping
objectClass:[Transfer class]
rootKeyPath:nil
method:RKRequestMethodPOST];
[manager addRequestDescriptor:requestDescriptor];
// response
RKMapping *responseMapping = [self.mappingProvider transferResultMapping];
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor
responseDescriptorWithMapping:responseMapping
method:RKRequestMethodGET
pathPattern:pathPattern
keyPath:nil
statusCodes:statusCodesSuccess];
[manager addResponseDescriptor:responseDescriptor];
}
你可以显示你的响应描述符的代码。您是否更新了弃用的方法? – Wain
是的,我没有关于弃用方法的警告我改变了代码使用值变压器。 – florian