について質問したいのですが、multipart/form-data
HTTP ヘッダーに が見つかりましたContent-Type: multipart/form-data; boundary=???
。
はユーザーが自由に定義できますか???
? それとも HTML から生成されますか? を定義することは可能ですか??? = abcdefg
?
ベストアンサー1
???
ユーザーが自由に定義できますか?
はい。
それとも HTML によって提供されるのでしょうか?
いいえ。htmlそれとは何の関係もありません。以下をお読みください。
???
を と定義することは可能ですかabcdefg
?
はい。
次のデータを Web サーバーに送信する場合:
name = John
age = 12
使用法はapplication/x-www-form-urlencoded
次のようになります:
name=John&age=12
ご覧のとおり、サーバーはパラメータがアンパサンドで区切られていることを認識しています&
。&
パラメータ値に が必要な場合は、エンコードする必要があります。
では、 を使用して HTTP リクエストを受信した場合、サーバーはどのようにしてパラメータ値の開始位置と終了位置を認識するのでしょうかmultipart/form-data
?
境界 を使用すると、 と同様になります&
。
例えば:
--XXX
Content-Disposition: form-data; name="name"
John
--XXX
Content-Disposition: form-data; name="age"
12
--XXX--
その場合、境界値は です。サーバーが受信したデータをどのように分割するかをXXX
認識できるように、ヘッダーで境界値を指定します。Content-Type
したがって、次のことを行う必要があります。
サーバーに送信される HTTP データには表示されない値を使用します。
一貫性を保ち、リクエスト メッセージ内のすべての場所で同じ値を使用します。