我正在向此网址发出请求
https://myserver.com/api/users/53a8d8d7e4b06b32f108c4f3/settings
有时这个请求会成功,有时会失败。这是我用来添加映射的代码。
RKResponseDescriptor *responseGetDescriptor =
[RKResponseDescriptor responseDescriptorWithMapping:userSettingsInfoMapping
method:RKRequestMethodGET
pathPattern:@"/api/users/:uniqueId/settings"
keyPath:nil
statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
失败时,HTTP状态代码为200,RestKit的错误代码为RKMappingErrorNotFound。
我从Restkit获得了一个有用的调试日志:
无法匹配:响应路径'/ api / users / 53a8d8d7e4b06b32f108c4f3 / settings'与路径模式'/ api / users /:uniqueId / settings'<不匹配/强> 的
只是查看此日志,路径似乎匹配。我相信这就是产生映射错误的原因。查看我的json响应的keypath,它们类似于成功场景中返回的json。回复是200。
可能有人想知道为什么会这样吗?