HTMLIFrameElement: referrerPolicy 属性

Baseline 广泛可用 *

此功能已成熟,并可在许多设备和浏览器版本上使用。自 2020 年 9 月起,所有浏览器均已提供此功能。

* 此特性的某些部分可能存在不同级别的支持。

HTMLIFrameElement.referrerPolicy 属性反映了 HTML 中 referrerpolicy 属性,用于定义在获取资源时发送哪个 Referer。

no-referrer

将完全省略 Referer 标头。请求不会附带任何 Referer 信息。

no-referrer-when-downgrade

当协议安全级别保持不变时(HTTP→HTTP,HTTPS→HTTPS),URL 将作为 Referer 发送,但不会发送到安全性较低的目的地(HTTPS→HTTP)。

origin

在所有情况下,仅将文档的 origin 作为 Referer 发送。文档 https://example.com/page.html 将发送 Referer https://example.com/

origin-when-cross-origin

在执行同源请求时发送完整的 URL,但在其他情况下仅发送文档的 origin。

same-origin

对于 同站点(same-site)的 origin,将发送 Referer,但跨站(cross-origin)请求将不包含任何 Referer 信息。

strict-origin

仅当协议安全级别保持不变时(HTTPS→HTTPS),将文档的 origin 作为 Referer 发送,但不会将其发送到安全性较低的目的地(HTTPS→HTTP)。

strict-origin-when-cross-origin (默认)

如果未指定策略,则这是用户代理的默认行为。执行同源请求时发送完整的 URL,仅当协议安全级别保持不变时(HTTPS→HTTPS)发送 origin,并且不向安全性较低的目的地(HTTPS→HTTP)发送标头。

unsafe-url

在执行同源或跨源请求时发送完整的 URL。

注意:此策略会将 TLS 保护资源的 origin 和路径泄露给不安全的 origin。请仔细考虑此设置的影响。

示例

js
const iframe = document.createElement("iframe");
iframe.src = "/";
iframe.referrerPolicy = "unsafe-url";
const body = document.querySelector("body");
body.appendChild(iframe); // Fetch the image using the complete URL as the referrer

规范

规范
HTML
# dom-iframe-referrerpolicy

浏览器兼容性

另见