Google App Engineに向けてiOSから画像データをPOSTする処理を考えていました。
Instgramを見てみると、サーバーは違えども、ASIHTTPRequestライブラリを使っているようだし、stack overflowを見ても、そのライブラリを使った方がいいみたいなコメントがあったけど、いまいち、使う気になれず。
そこで、Objective-Cでmultipart/form-data形式でPOSTするのエントリーを見ながら素直に実装するが、サーバー側でエラーが発生してしまう。
なんでだろうーっと思った結果、下記のコードを追加することでエラーを取ることができました。
[data appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"%@\"\r\n", key1,key2] dataUsingEncoding:NSUTF8StringEncoding]]; [data appendData:[@"Content-Type: image/jpeg\r\n" dataUsingEncoding:NSUTF8StringEncoding]];この2行を追加しなかったために、実装するのに丸々3ヶ月近くかかりました。
結果的にできたので、すっげーほっとした。
ただ、上の処理を追加しなくてもamazonのcloudサービスにはアップできるかもしれないし、Windows Azureにもできるかもしれない。
今回のケースは、あくまで、google app engineとして必要だということです。
これを追加しなくても、画像をアップロードできる方法があったら、コメントいただけると幸いです。
0 コメント:
コメントを投稿