アプリとかで、HTTPリクエスト処理を実装する際に、POSTで、platform=iOS&varsion=1.5みたいな感じで、データを送信したいとき、application/x-www-form-urlencodedとかmultipart/form-dataとかを使用して実装すると思う。
では、どちらを使用するのが良いのか。
ざっくりと調べた感じでは、サイズの大きいバイナリデータを送信する場合は、multipart/form-dataを使用し、それ以外は、application/x-www-form-urlencodedを使用すればオッケー。
理由は主に以下
– application/x-www-form-urlencodedで、バイナリデータを送信する際、エンコードによって、バイナリデータのサイズが大きくなってしまう。
– multipart/form-dataでは通信のオーバーヘッドがapplication/x-www-form-urlencodedより大きくなってしまう。
参照
https://stackoverflow.com/questions/4007969/application-x-www-form-urlencoded-or-multipart-form-data
コメント