Restkit如何将任意json(键可能会超时)映射到NSDictionary

时间:2014-05-26 14:41:36

标签: ios objective-c json rest restkit

让我们说回应PUT请求:

[[RKObjectManager sharedManager]
    putObject:nil
    path:@"/api/users/add-user"
    parameters:dictionary
    success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult){
        NSLog(@"Success");
    }
    failure:^(RKObjectRequestOperation *operation, NSError *error){
        NSLog(@"Failure");
    }
];

我得到了一个未知结构的“ JSON ”。我不知道期望什么键和多少键,但值都是字符串。如何将其映射到NSDictionary *object

2 个答案:

答案 0 :(得分:1)

您可以使用REST客户端查看响应和JSON响应的结构,并创建相应的模型以对其进行映射。或者,如果这不是一致的模型,您可以使用NSJSONSerialization将JSON解析为KV对,并将您感兴趣的变量解析为'mappingResult'。

你可能想看一下AFNetworking 2.0。它适用于您的REST调用和解析您的JSON。 http://nshipster.com/afnetworking-2/

答案 1 :(得分:1)

如果JSON响应具有未知结构,那么您不应该使用RestKit(只需使用NSJSONSerialization并自己处理所有内容),或者您需要使用RKDynamicMapping以便分析传入的数据并确定要创建的映射(即时)并返回操作处理。