配列であるパラメーター (カテゴリ) を使用して画像を投稿しようとしています。このパラメーターを省略しても、問題なく送信できます。ただし、そのままにしておくと、配列値が正しくシリアル化されていないように見えるため、サーバーがエラーをスローします。
NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithDictionary:@{
@"auth_token" : authToken,
@"title" : title,
@"categories" : @[1,2,3]
}];
return [[MyHTTPSessionManager sharedManager] POST:path parameters:dict constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
[formData appendPartWithFileData:imageData
name:@"image"
fileName:@"image.jpg"
mimeType:@"image/jpeg"];
} success:nil failure:nil];
私のサーバーログを見ると、これはカテゴリがどのように出くわしているかです:
Parameters: {"categories"=>"(\n 1,\n 2,\n 3\n)", … }
そして、次のようにする必要があります。
Parameters: {"categories"=>[1,2,3], … }
AFHTTPSessionManager の requestSerializer のインスタンスを に設定しようとしました[AFJSONRequestSerializer serializer]
が、それは役に立たないようです。
画像とパラメータを正しく POST するにはどうすればよいですか? AFHTTPRequestOperation にフォールバックすることは避けたいと思います。
ありがとう!