gpt4 book ai didi

iphone - 使用 JSON 字符串使用 RestKit 将对象手动加载到核心数据中

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:04:03 24 4
gpt4 key购买 nike

使用restkit(0.20)的开发分支,有没有办法将JSON字符串映射到核心数据对象存储?

我知道在 0.10 中,这个 page 底部描述的方法有效,但如何在 restkit 0.20 中执行此操作?任何指导表示赞赏!谢谢!

id<RKParser> parser = [[RKParserRegistry sharedRegistry] parserForMIMEType:MIMEType];
id parsedData = [parser objectFromString:JSONString error:&error];

RKObjectMappingProvider* mappingProvider = [RKObjectManager sharedManager].mappingProvider;
RKObjectMapper* mapper = [RKObjectMapper mapperWithObject:parsedData mappingProvider:mappingProvider];
RKObjectMappingResult* result = [mapper performMapping];

最佳答案

我昨天安装了 RESTKit v0.20.0pre4 并且对一个特定案例有同样的需求。

这是我要映射的 JSON 字符串的示例:

{"info":"the sun is shining","detail":"in Bordeaux ~ 29 °C"}

这就是我执行映射的方式。

- (InfoRESTMapped *)mapInfoFromJSONString:(NSString *) JSONString{

NSString* MIMEType = @"application/json";
NSError* error;

NSData *data = [JSONString dataUsingEncoding:NSUTF8StringEncoding];
id parsedData = [RKMIMETypeSerialization objectFromData:data MIMEType:MIMEType error:&error];
if (parsedData == nil && error) {
//deal with error
}

RKObjectMapping *infoMapping = [RKObjectMapping requestMapping];
[infoMapping addAttributeMappingsFromDictionary:@{
@"info": @"myInfo",
@"detail": @"myDetail",
}];


InfoRESTMapped *infoMapped = [[InfoRESTMapped alloc] init];
RKMappingOperation* mapper = [[RKMappingOperation alloc] initWithSourceObject:parsedData destinationObject:infoMapped mapping:infoMapping];
[mapper performMapping:&error];

return infoMapped;
}

这些帖子让我找到了我建议的解决方案:

希望对你有所帮助。我想当最终版本发布时,其他一些人会提供更好的解决方案(也有更好的文档......)。

关于iphone - 使用 JSON 字符串使用 RestKit 将对象手动加载到核心数据中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12793668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com