HTMLScriptElement:referrerPolicy 属性
referrerPolicy
是 HTMLScriptElement
接口的属性,它反映了 HTML referrerpolicy
属性(<script>
元素),该属性定义了在获取脚本及其导入的任何脚本时如何设置推荐来源。
值
字符串;以下之一
no-referrer
-
将完全省略
Referer
标头。不会将任何推荐来源信息与请求一起发送。 no-referrer-when-downgrade
-
当协议安全级别保持不变(例如 HTTP→HTTP、HTTPS→HTTPS)时,将 URL 发送为推荐来源,但不会将其发送到安全性较低的目的地(例如 HTTPS→HTTP)。
origin
-
在所有情况下仅发送文档的来源作为推荐来源。文档
https://example.com/page.html
将发送推荐来源https://example.com/
。 origin-when-cross-origin
-
在执行同源请求时发送完整 URL,但在其他情况下仅发送文档的来源。
same-origin
-
将为 同源来源 发送推荐来源,但跨源请求将不包含任何推荐来源信息。
strict-origin
-
仅当协议安全级别保持不变(例如 HTTPS→HTTPS)时,才将文档的来源发送为推荐来源,但不要将其发送到安全性较低的目的地(例如 HTTPS→HTTP)。
strict-origin-when-cross-origin
(默认值)-
如果未指定任何策略,则这是用户代理的默认行为。在执行同源请求时发送完整 URL,仅在协议安全级别保持不变(例如 HTTPS→HTTPS)时发送来源,并且不向安全性较低的目的地(例如 HTTPS→HTTP)发送标头。
unsafe-url
-
在执行同源或跨源请求时发送完整 URL。此策略会将来源和路径从 TLS 保护的资源泄漏到不安全的来源。请仔细考虑此设置的影响。
注意:空字符串值 (""
) 既是默认值,也是在不支持 referrerpolicy
时的回退值。如果未在 <script>
元素上显式指定 referrerpolicy
,则它将采用更高级别的推荐来源策略,即在整个文档或域上设置的策略。如果无法使用更高级别的策略,则空字符串将被视为等效于 no-referrer-when-downgrade
。
示例
const scriptElem = document.createElement("script");
scriptElem.src = "/";
scriptElem.referrerPolicy = "unsafe-url";
document.body.appendChild(scriptElem);
规范
规范 |
---|
HTML 标准 # dom-script-referrerpolicy |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。