私がrestkitを使用するのはこれが初めてで、自動マッピングに興味があります(そして、おそらく後でCoreDataとの統合にも興味があります)。
現在、GETリクエストを実行し、次のコードを使用してレスポンスを単純なオブジェクトにマッピングすることができました。
RKObjectMapping *myMapping = [[self class] objectMappingForClass:[MyClass class]];
[myMapping mapKeyPath:@"Name" toAttribute:@"name"];
[myMapping mapKeyPath:@"Value" toAttribute:@"value"];
....
+ (RKObjectMapping*)objectMappingForClass: (Class)class
{
RKObjectMapping *mapping = [RKObjectMapping mappingForClass:class];
mapping.rootKeyPath = @"Data";
mapping.performKeyValueValidation = NO;
// mapping.ignoreUnknownKeyPaths = YES;
mapping.setNilForMissingRelationships = YES;
mapping.setDefaultValueForMissingAttributes = YES;
return mapping;
}
次の方法でサーバーからデータを取得します。
RKObjectMapping *defaultPropertiesMapping = [self.objectManager.mappingProvider objectMappingForClass:[MyClass class]];
RKObjectLoader *request = [self.objectManager loaderWithResourcePath:GetDefaultPropertiesURL];
request.objectMapping = defaultPropertiesMapping;
RKResponse *response = [request sendSynchronously];
問題は、応答に対してサーバーがHTTPステータスを使用せず、JSONペイロードの属性を使用することです(ペイロードは次のようになります:
{ "Status" : "OK", "Data" : { //real payload } }
そのステータス属性を確認するにはどうすればよいですか?