Content-Type
Content-Type
表現ヘッダーは、リソースのメディア種別を示すために使用します。
レスポンスにおいては、 Content-Type
ヘッダーはクライアントに返されたコンテンツの実際の種類を伝えます。ブラウザーは MIME を推定し、このヘッダーの値に従わないこともあります。 X-Content-Type-Options
を nosniff
に設定すると、この動作を防ぐことができます。
リクエストにおいては (POST
または PUT
などで)、クライアントがサーバーに実際に送ったデータの種類を伝えます。
ヘッダー種別 | 表現ヘッダー |
---|---|
禁止ヘッダー名 | いいえ |
CORS セーフリストレスポンスヘッダー | はい |
CORS セーフリストリクエストヘッダー |
はい。 CORS 危険リクエストヘッダーバイトである 0x00-0x1F (0x09 (HT) を除く)、"():<>?@[\]{} 、0x7F (DEL) を値に含むことができないという制限付きです。また、 MIME タイプの解釈値 (引数を除いたもの) が application/x-www-form-urlencoded , multipart/form-data , text/plain の何れかである必要があります。 |
構文
Content-Type: text/html; charset=UTF-8 Content-Type: multipart/form-data; boundary=something
ディレクティブ
media-type
-
リソースやデータの MIME タイプです。
- charset
-
標準の文字エンコーディングです。
- boundary
-
マルチパートの本文では
boundary
ディレクティブが必要で、これはメールゲートウェイを通過しても大丈夫だと知られている文字の中から 1~70 文字で構成され、ホワイトスペースで終了しないものです。これはメッセージの複数パートの境界を囲むために使用します。ふつう、ヘッダーの境界は 2 本のダッシュで始まり、最後の境界には最後にも 2 本のダッシュが入ります。
例
HTML フォームにおける Content-Type
HTML フォームを送信する POST
リクエストでは、リクエストの Content-Type
は <form>
要素の enctype
属性で指定します。
html
<form action="/" method="post" enctype="multipart/form-data">
<input type="text" name="description" value="some text" />
<input type="file" name="myFile" />
<button type="submit">Submit</button>
</form>
このリクエストはこのように見えます (ここではあまり重要でないヘッダーは省略しています)。
POST /foo HTTP/1.1 Content-Length: 68137 Content-Type: multipart/form-data; boundary=---------------------------974767299852498929531610575 -----------------------------974767299852498929531610575 Content-Disposition: form-data; name="description" some text -----------------------------974767299852498929531610575 Content-Disposition: form-data; name="myFile"; filename="foo.txt" Content-Type: text/plain (content of the uploaded file foo.txt) -----------------------------974767299852498929531610575--
仕様書
Specification |
---|
HTTP Semantics # status.206 |
HTTP Semantics # field.content-type |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
Accept
Content-Disposition
206
Partial ContentX-Content-Type-Options