我使用Restkit Coredata在服务器上保存了4个不同的令牌。 使用响应描述符。
RKResponseDescriptor *tokenDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:instagramToken method:RKRequestMethodGET pathPattern:@"register/token" keyPath:@"data" statusCodes:statusCodes];
//我这样称呼它。
[[RKObjectManager sharedManager] getObjectsAtPath:@"register/token" parameters:params success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
}];
它存储得非常好,我也可以在coredata中访问它。但问题是, 如果我在服务器上保存1个令牌并映射响应,则所有这些都没有问题。但是当我在服务器上保存其他令牌时,新的响应将被映射到coredata并且过度纠正旧的响应。 我想在coredata中保留所有回复。
请帮忙。
答案 0 :(得分:0)
服务器需要为每个令牌返回唯一标识,以便您知道哪个是哪个。您需要模型中的属性来存储它,您需要将其添加到映射并将其设置为映射标识属性。最后,您需要将RK托管对象存储与对象缓存连接,以便它可以搜索要更新的重复项(而不是始终创建新实例)。