次のメッセージを AFHTTPClient のインスタンスに送信しています。成功ブロックが Foundation オブジェクト (辞書) に送信されることを期待していますが、デバッガーは JSON が _NSCFData オブジェクトであることを示しています。 SO に関するこの質問では、Accept ヘッダーを「application/json」に設定する必要があると述べています。私はそうしていますが、AFNetworking はまだ応答本文の JSON をデコードしていません。NSJSONSerialization を使用して自分で json をデコードすると、期待どおりに NSDictionary が得られます。私は何を間違っていますか?
[client setDefaultHeader:@"Accept" value:@"application/json"];
[client postPath:@"/app/open_connection/"
parameters:params
success:^(AFHTTPRequestOperation *operation, id JSON) {
NSLog(@"successful login! %@", [JSON valueForKeyPath:@"status"]);
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"error opening connection");
NSAlert *alert = [NSAlert alertWithError:error];
[alert runModal];
}
];
注: Django を使用して Python でサーバーをプログラミングしています。応答のコンテンツ タイプは「application/json」です。