Content-Type
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
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 之一。 |
語法
http
Content-Type: text/html; charset=utf-8
Content-Type: multipart/form-data; boundary=something
指令
media-type
-
資源或數據的 MIME 類型。
- charset
-
字符編碼標準。大小寫不敏感,推薦使用小寫。
- boundary
-
對於多部分實體,
boundary
指令是必需的。該指令由 1 到 70 個字符組成(不以空白結尾),這些字符被認為是通過電子郵件網關非常穩定的字符集合。它用於封裝消息多個部分的邊界。通常,標頭邊界前面加上兩個短劃,最後的邊界末尾加上兩個短劃。
範例
HTML 表單中的 Content-Type
在 POST
請求中,來自 HTML 表單提交的 Content-Type
由 <form>
元素上的 enctype
屬性指定。
html
<form action="/foo" 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>
請求看起來像這樣(省略了一些不太重要的標頭):
http
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