PUTメソッドを介してデータを配置するときに、オブジェクトとマッピングを構築してこのようなことを達成する方法の問題に固執しています:「lastChanges/confirm」
上記の PUT-Request は、ボックス ID の同期を確認するために、次のような本文を受け入れます。
{ "synchronized_boxes": [47292,someOtherBoxId,..] }
私はこのようなオブジェクトを構築しようとしました:
@interface RPConfirmSync : NSObject
@property (nonatomic, retain) NSArray *synchronized_boxes;
@end
このオブジェクトを送信する前に、いくつかの NSNumber オブジェクトを配列に追加します。
設定したマッピングは次のようになります。
RKObjectMapping *confirmMapping = [RKObjectMapping mappingForClass:[RPConfirmSync class]];
[confirmMapping addAttributeMappingsFromArray:@[@"synchronized_boxes"]];
RKObjectMapping *requestMapping = [confirmMapping inverseMapping];
NSString *pathPattern = [NSString stringWithFormat:@"lastsync/confirm"];
RKRequestDescriptor *requestDescriptor = [RKRequestDescriptor requestDescriptorWithMapping:requestMapping objectClass:[RPConfirmSync class] rootKeyPath:nil];
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:confirmMapping pathPattern:pathPattern keyPath:nil statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
[self.objectManager addRequestDescriptor:requestDescriptor];
[self.objectManager addResponseDescriptor:responseDescriptor];
ここで、上記の PUT-Request を実行してリクエスト本文を見ると、RestKit Debug 情報に次のような奇妙なものが表示されます。
request.body=synchronized_boxes[]=47292 //being sent to the server !ERROR!
どちらであるべきか
request.body=synchronized_boxes[47292]
オブジェクトをどのようにセットアップする必要がありますか、またはマッピングに問題がありますか? 答えは簡単だと思いますが、私は本当にここで立ち往生しています。