Save-Data

您正在阅读此内容的英文版本,因为该语系尚未翻译。 帮助我们翻译此文章吧!

Save-Data请求头字段是一个布尔值,在请求中,表示客户端对减少数据使用量的偏好。 这可能是传输成本高,连接速度慢等原因。

值为on时,明确表示用户选择使用客户端简化数据使用模式,并且当与源进行通信时允许他们提供替代内容以减少下载的数据,例如较小的图像和视频资源,不同的标记和样式,禁用轮询和自动更新等。

提示: 禁用 HTTP/2 服务器端推送 (RFC 7540, section 8.2: Server Push)也可以用于减少数据下载。

语法

Save-Data: <sd-token>

指令

<sd-token>
一个数值,表示客户端是否想要选择简化数据使用模式。 on表示是,而off(默认值)表示不。

示例

请求头Vary 确保正确缓存内容(例如,当Save-Data标头不再存在时,确保不从缓存向用户提供较低质量的图像[例如在从蜂窝网络切换到Wi-Fi后])

携带 Save-Data: on 请求头

请求示例:

GET /image.jpg HTTP/1.0
Host: example.com
Save-Data: on

响应示例:

HTTP/1.0 200 OK
Content-Length: 102832
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg

[...]

不携带 Save-Data请求头

请求示例:

GET /image.jpg HTTP/1.0
Host: example.com

响应示例:

HTTP/1.0 200 OK
Content-Length: 481770
Vary: Accept-Encoding, Save-Data
Cache-Control: public, max-age=31536000
Content-Type: image/jpeg

[...]

规范

Specification Title
draft-grigorik-http-client-hints-03, section 7: Save-Data HTTP Client Hints

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Save-Data
Experimental
Chrome Full support 49Edge ? Firefox ? IE ? Opera Full support 35Safari ? WebView Android Full support 49Chrome Android Full support 49Firefox Android ? Opera Android Full support 35Safari iOS ? Samsung Internet Android Full support 5.0

Legend

Full support  
Full support
Compatibility unknown  
Compatibility unknown
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.

参见