DPR

已弃用: 不再推荐使用该特性。虽然一些浏览器仍然支持它,但也许已从相关的 web 标准中移除,也许正准备移除或出于兼容性而保留。请尽量不要使用该特性,并更新现有的代码;参见本页面底部的兼容性表格以指导你作出决定。请注意,该特性随时可能无法正常工作。

安全上下文: 此项功能仅在一些支持的浏览器安全上下文(HTTPS)中可用。

非标准: 该特性是非标准的,请尽量不要在生产环境中使用它!

DPR 设备客户端提示请求标头提供客户端设备的像素比。该比例是与每个 CSS 像素相对应的物理设备像素的数量。

标头类型 请求标头客户端提示
禁止修改的标头

在选择与屏幕像素密度最匹配的图像源时,此提示非常有用。这类似于 <img> srcset 属性中 x 描述符的作用,其允许用户代理选择首选图像。

如果服务器使用 DPR 提示来选择在响应中发送哪个资源,则响应必须包含 Content-DPR 标头。如果 Content-DPR 的值与请求的 DPR 标头中的值不同,客户端必须使用 Content-DPR 的值进行布局。

如果 DPR 标头出现在消息中多次,则使用最后一次出现的值。

备注:

  • 客户端提示仅在安全来源(通过 TLS)上可用。
  • 服务器必须通过发送包含 DPRAccept-CH 响应标头,才能接收来自客户端的 DPR 标头。
  • 选择加入 DPR 客户端提示的服务器通常也会在 Vary 标头中指定它。这会通知缓存服务器,服务器可能会根据请求中的标头值发送不同的响应。
  • draft-ietf-httpbis-client-hints-07 中,客户端提示规范已经移除了 DPR。建议的替代方案是 Sec-CH-DPR(响应式图像客户端提示)。

语法

http
DPR: <number>

指令

<number>

客户端设备的像素比。

示例

服务器必须首先通过发送包含 DPR 指令的 Accept-CH 响应标头来选择接收 DPR 标头。

http
Accept-CH: DPR

然后,在后续请求中,客户端可能会将 DPR 标头发送到服务器:

http
DPR: 2.0

如果带有 DPR 标头(如上所示)的请求是针对图像资源的,则服务器响应必须包含 Content-DPR 标头:

http
Content-DPR: 2.0

浏览器兼容性

BCD tables only load in the browser

参见