--
このメールは Google グループのグループ「「体系的に学ぶ 安全なWebアプリケーションの作り方」サポートML」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには wasbook-reade...@googlegroups.com にメールを送信してください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/296084eb-679c-4212-aa32-af7dfec18712n%40googlegroups.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/a31f4561-0f29-4148-bade-6bf13cb83953n%40googlegroups.com にアクセスしてください。
このメールは Google グループのグループ「「体系的に学ぶ 安全なWebアプリケーションの作り方」サポートML」のトピックを登録しているユーザーに送られています。
このトピックの登録を解除するには https://groups.google.com/d/topic/wasbook-readers/2phr2Wn4WcE/unsubscribe にアクセスしてください。
このグループを退会し、グループのすべてのトピックの登録を解除するには wasbook-reade...@googlegroups.com にメールを送信してください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/CANJDpr8MA684%2Bzc_KOtFDcUKXbiu4oBWFeOkj4c%2B_ai51hmZLw%40mail.gmail.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/CAA_5hecD3vL%2BZ3AouM%2B%3D-O2-XCyGWnGxyM1Laad9C%2BFOB3HXZg%40mail.gmail.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/CANJDpr9h0FKoBi6Bo1058%3DvikW%3DY5C8tDntCJ7m-ssB9MLBiSw%40mail.gmail.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/CAA_5hedhrsZDXkanNEFXG0_%3DH9DjnuCdWZF56JwbqHGiHSc0ew%40mail.gmail.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/88b60369-dd1f-4301-9552-9f3775c2fad1n%40googlegroups.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/b77b657f-635c-417b-a309-bb64f80ef545n%40googlegroups.com にアクセスしてください。
HTTPリクエストの multipart/form-data は、フォームの各入力項目を個別の「パート」に分けて送信する形式で、特にファイルアップロードやテキストデータとファイルデータの混在を送信する際に用いられます。各パートは独自のヘッダーを持ち、どのデータがどのフィールドに対応するかを明示します。
境界文字 (Boundary):
リクエスト全体を複数の部分に分割するための区切り文字列です。HTTPヘッダーの Content-Type
に boundary
パラメータとして設定され、リクエストボディ内ではこの文字列で各パートが区切られます。
各パートのヘッダー:
各パートには最低限、以下のようなヘッダーが含まれます。
Content-Disposition
: どのフォームフィールドに対応するか、またはファイル名などを指定します。Content-Type
: そのパートのデータのMIMEタイプを示します(ファイルの場合に特に重要)。以下は、ユーザー名と画像ファイルを送信するフォームを例にしたHTTPリクエストの一部です。
POST /upload HTTP/1.1Host: example.com Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW Content-Length: [全体のバイト数] ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="username" john_doe ------WebKitFormBoundary7MA4YWxkTrZu0gW Content-Disposition: form-data; name="profile_picture"; filename="photo.jpg" Content-Type: image/jpeg [ここにJPEG画像のバイナリデータが入ります] ------WebKitFormBoundary7MA4YWxkTrZu0gW--
リクエストヘッダー:
Content-Type
ヘッダーにて multipart/form-data
と境界文字が指定されています。Content-Length
により明示されます。最初のパート(usernameフィールド):
Content-Disposition: form-data; name="username"
と記述。john_doe
) が記述されています。2つ目のパート(ファイルアップロード):
Content-Disposition
でフォームフィールド名(ここでは profile_picture
)とファイル名(photo.jpg
)が指定されます。Content-Type
にはファイルのMIMEタイプ(ここでは image/jpeg
)が指定され、空行の後にファイルのバイナリデータが配置されます。終了:
--
を付けてリクエストの終了を示します。この形式を利用することで、サーバー側は各パートごとにデータを解析し、テキストデータとバイナリデータを適切に処理することが可能になります。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/751f4b29-b5da-432e-9fb5-3558093a5490n%40googlegroups.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/d06bb1dc-34e7-425b-a730-44f7c5e8b01cn%40googlegroups.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/9eb5a6e3-7ea5-4c6d-8556-a07b0d57b2d3n%40googlegroups.com にアクセスしてください。
このディスカッションを表示するには、https://groups.google.com/d/msgid/wasbook-readers/9b97a3c5-e3de-4f79-a7d3-0f8f7fe4cc62n%40googlegroups.com にアクセスしてください。