HTMLAnchorElement: referrerPolicy 属性
Baseline 广泛可用 *
HTMLAnchorElement.referrerPolicy 属性反映了 HTML referrerpolicy 属性,该属性定义了在获取资源时发送的引用者信息。
值
一个字符串;以下选项之一
no-referrer-
将完全省略
Referer标头。请求不会附带任何 Referer 信息。 no-referrer-when-downgrade-
当协议安全级别保持不变时(例如 HTTP→HTTP,HTTPS→HTTPS),URL 将作为 Referer 发送,但不会发送到安全性较低的目的地(例如 HTTPS→HTTP)。
origin-
在所有情况下,仅将文档的 origin 作为 Referer 发送。文档
https://example.com/page.html将发送 Refererhttps://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,仅在协议安全级别保持不变时发送 origin(例如 HTTPS→HTTPS),并且不向安全性较低的目的地发送标头(例如 HTTPS→HTTP)。
unsafe-url-
在执行同源或跨域请求时发送完整 URL。此策略会将受 TLS 保护资源的 origin 和路径泄露给不安全的 origin。请仔细考虑此设置的影响。
示例
js
const elt = document.createElement("a");
const linkText = document.createTextNode("My link");
elt.appendChild(linkText);
elt.href = "https://mdn.org.cn/en-US/";
elt.referrerPolicy = "no-referrer";
const div = document.getElementById("divAround");
div.appendChild(elt); // When clicked, the link will not send a referrer header.
规范
| 规范 |
|---|
| HTML # dom-a-referrerpolicy |
浏览器兼容性
加载中…