我目前不熟悉使用RestKit for IOS并遇到问题。我设置了一个JAXRS服务调用,它从后端检索数据并以xml显示内容。所以你会得到像http://www.example.com/service/clients这样的网址。这将返回客户列表等。 我试图在IOS中使用RestKit框架将xml映射到我可以使用的对象。有没有人知道这样做的一个简单例子。以下是我使用的大部分代码:
-(void) viewDidLoad
{
RKObjectManager *manager = [RKObjectManager objectManagerWithBaseURL:@"http://www.example.com/service"];
RKObjectMapping *clientMapping = [RKObjectMapping mappingForClass:[client class]];
[clientMapping mapKeyPath:@"lastName" toAttribute:@"lastName"];
[clientMapping mapKeyPath:@"firstName" toAttribute:@"firstName"];
[manager.mappingProvider setMapping:hcpMapping forKeyPath:@/clients"];
[[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/clients" delegate:self];
.....
}
我收到以下错误: HTTP状态406 - 接受标头不匹配 restkit.network:RKObjectLoader.m:241无法找到MIMEType'text / html'的解析器
这似乎是从页面返回的错误,但是,我能够运行页面并且它从浏览器返回xml没有问题。有谁知道我做错了什么?
答案 0 :(得分:1)
[RKMIMETypeSerialization registerClass:[RKNSJSONSerialization class]
forMIMEType:@"text/html"];
这应该可以解决问题。有关详细信息,请查看 this 链接。
答案 1 :(得分:0)
尝试明确指定XML:
objectManager.serializationMIMEType = RKMIMETypeXML;