我是 RestKit 的初学者,我发现很难掌握它的窍门,优于使用标准 cocoa 进行 Web 服务响应解析,但仍然感觉落后于 .net 或 java...
总之,言归正传。我有一个 WCF Web 服务,它返回如下内容:
{"GetSiteMapResult":"iVBORw0KGgoAAAANSUhEUgAAB\/cAAAf3CAIAAACicn4JAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAP+lSURBVHhe7P0JoF1HcSeMS2\/X0y5ZepK8St5ly7HxgsxiB2TH"}
GetSiteMapResult 后跟一个大字符串。
如何使用 ReskKit 将其解析为 NSString?我尝试添加映射,但我不确定该代码是什么,例如所有示例都遵循以下内容:
RKObjectMapping *mapping = [RKObjectMapping mappingForClass:[myClass class]];
[mapping mapKeyForPath:@"node" toAttribute:@"attributeInMyClass"];
[[RKObjectManager sharedManager].mappingProvider setMapping:mapping forKeyPath:@"RootNodeInReturnJSON"];
但是由于这是我在服务响应中返回的对象,只是一个字符串,所以我不确定如何执行此操作。
最佳答案
你不需要 RestKit 来解析这么简单的响应,而且我猜 RestKit 无法解析为 NSString。当您有更复杂的 JSON 响应时,RestKit 确实是一个救星。为了解析此响应,我将创建一个带有一个字符串 ivar 的类并相应地映射响应。
但是,我建议使用 JSONKit解析来自 Web 服务 api 的简单响应。您还可以看看著名的 ASIHTTP 库,它肯定会帮助您处理 HTTP 通信。
关于objective-c - 将 JSON 结果解析为 NSString 或 RestKit 中类似的 "primitive"数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7678783/