Critical-CH header

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

安全上下文: 此功能僅在安全上下文(HTTPS)中可用,且支援此功能的瀏覽器數量有限。

HTTP Critical-CH 響應頭Accept-CH 一同使用,用於標識已接受的客戶端提示中哪些是關鍵的

接收到帶有 Critical-CH 的響應的使用者代理必須檢查原始請求中是否傳送了指示的關鍵頭部。如果未傳送,使用者代理將重新發送請求幷包含關鍵頭部,而不是渲染頁面。這種方法確保了即使在第一次請求中未包含,或伺服器配置更改後,使用關鍵客戶端提示設定的客戶端偏好也始終會被使用。

Critical-CH 頭部中列出的每個頭部也應存在於 Accept-CHVary 頭部中。

頭型別 響應頭
禁止請求頭

語法

http
Critical-CH: <ch-list>

指令

<ch-list>

一個或多個逗號分隔的客戶端提示頭部列表,伺服器認為它們是關鍵客戶端提示。

示例

客戶端向伺服器發出初始請求

http
GET / HTTP/1.1
Host: example.com

伺服器響應,透過 Accept-CH 表明它接受 Sec-CH-Prefers-Reduced-Motion。在此示例中,Critical-CH 也用於指定 Sec-CH-Prefers-Reduced-Motion 被認為是關鍵客戶端提示。

http
HTTP/1.1 200 OK
Content-Type: text/html
Accept-CH: Sec-CH-Prefers-Reduced-Motion
Vary: Sec-CH-Prefers-Reduced-Motion
Critical-CH: Sec-CH-Prefers-Reduced-Motion

注意:我們已在 Vary 頭部中指定 Sec-CH-Prefers-Reduced-Motion,以表明響應應根據此頭部的值(即使 URL 保持不變)進行單獨快取。Critical-CH 頭部中列出的每個頭部也應存在於 Accept-CHVary 頭部中。

客戶端自動重試請求(由於上面指定了 Critical-CH),透過 Sec-CH-Prefers-Reduced-Motion 告知伺服器它有減少動畫的使用者偏好

http
GET / HTTP/1.1
Host: example.com
Sec-CH-Prefers-Reduced-Motion: "reduce"

客戶端將在當前會話的後續請求中包含該頭,除非響應中的 Accept-CH 發生變化,表明伺服器不再支援它。

規範

規範
客戶端提示可靠性
# name-the-critical-ch-response-he

瀏覽器相容性

另見