Objective c 使用restrkObjectMapping构建自定义json
我正在尝试使用Restkit从ios应用程序通过RESTful API创建一个所谓的数据流。 为此,API需要以下json POST:Objective c 使用restrkObjectMapping构建自定义json,objective-c,ios,json,restkit,Objective C,Ios,Json,Restkit,我正在尝试使用Restkit从ios应用程序通过RESTful API创建一个所谓的数据流。 为此,API需要以下json POST: {"version":"1.0.0", "datastreams" : [ { "current_value" : "100", "id" : "1" } ] } 如您所见,API接受一个数据流数组,但我想做的是从单个数据流对象生成此json代码 我要创建的数据流在我的应用程序中表示为具有以下属性的对象: 版本
{"version":"1.0.0",
"datastreams" : [
{
"current_value" : "100",
"id" : "1"
}
]
}
如您所见,API接受一个数据流数组,但我想做的是从单个数据流对象生成此json代码
我要创建的数据流在我的应用程序中表示为具有以下属性的对象:
- 版本
- 标识符
- 当前值
您需要为数据流配置序列化映射。试着这样做:
[[RKObjectManager sharedManager] postObject: datastream usingBlock: ^(RKObjectLoader *loader) {
RKObjectMapping* mapping = [RKObjectMapping mappingForClass: [Datastream class]];
[mapping mapAttributes: @"version", nil];
//etc.
loader.delegate = self;
loader.serializationMapping = mapping inverseMapping];
}];
谢谢你的回答!在我的代码中,我有一(1)个要创建的Datastream对象,但json API接受一个Datastream数组。问题是:我应该在代码中用什么替换“etc”,以构建我发布的确切json结构?如果不创建一个包含数据流数组的包装器类,这是可能的吗
[[RKObjectManager sharedManager] postObject: datastream usingBlock: ^(RKObjectLoader *loader) {
RKObjectMapping* mapping = [RKObjectMapping mappingForClass: [Datastream class]];
[mapping mapAttributes: @"version", nil];
//etc.
loader.delegate = self;
loader.serializationMapping = mapping inverseMapping];
}];