如何将RKObjectMapping用作独立库

时间:2013-07-05 07:43:08

标签: ios json restkit object-object-mapping

我使用AFNetworking编写RESTful客户端。 然后使用JSONKit将响应数据解析为NSDictionary。

示例:

- (void)postPath:(NSString *)path
  parameters:(NSDictionary *)parameters
     success:(void (^)(AFHTTPRequestOperation *operation, id responseObject, NSDictionary* jsonDictionary))success
     failure:(void (^)(AFHTTPRequestOperation *operation, NSError *error))failure
    {

    [self.client postPath:path parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
        NSDictionary* jsonDictionary = [self.jsonDecoder objectWithData:responseObject];

        // do the object-mapping works            

        success(operation, responseObject, jsonDictionary);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        failure(failure, error);
    }];

}

如何使用RESTKit中的RKObjectMapping作为独立库来执行对象映射? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

如果您使用RestKit,它将替换您当前的所有代码。 RestKit构建在AFNetworking之上,因此您可以从RestKit发布对象并将结果数据映射回该对象。这是否有用取决于POST的目的。如果您不使用AFJSONRequestOperation使用RestKit,您当前可以修剪一下。

一般来说,问题归结为:

  1. 您发布和期望接收的数据是什么
  2. 您的映射有多复杂
  3. 如果映射不复杂,RestKit可能有点过分。从您的代码看起来您​​正在制作一个简单的帖子,因此应该没问题(并且您将构建您的映射以更新您发布的对象,即使实际上没有从该对象获取数据来发出请求)。