0

我使用 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 作为独立库来进行对象映射?提前致谢。

4

1 回答 1

0

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

一般来说,问题归结为:

  1. 您发布并希望收到的数据是什么
  2. 你的映射有多复杂

如果映射不复杂,RestKit 可能是矫枉过正。从您的代码看来,您正在发布一个简单的帖子,所以应该没问题(并且您将构建映射以更新您发布的对象,即使实际上没有从该对象中获取任何数据来发出请求)。

于 2013-07-07T10:28:02.880 回答