我试图了解 HTTP 引用标头的行为。我注意到有时引用站点是完整的(完整的 URL,包括路径和查询字符串),但大多数情况下它仅包含域。
例如 'https://www.google.com/' 代替 ''
关于裁判何时满、何时截断有什么规则吗?
截至 2020 年 11 月更新详细信息...
许多浏览器已开始默认采用更严格的引荐来源网址策略(strict-origin-when-cross-origin
) 发出跨域请求时而不是旧的默认值 (no-referrer-when-downgrade
)。这通常会导致网址被截断,但有时也意味着根本不会设置引荐来源网址(no-referrer
).
以下是一篇关于此问题的好文章的摘录:https://plausible.io/blog/referrer-policy
Chrome 正在使用strict-origin-when-cross-origin
从版本 85 开始。跨源时严格源是在同一域上发送完整路径的位置,但如果转到另一个域则仅发送域本身。之前用的是no-referrer-when-downgrade
.
火狐浏览器正在使用no-referrer-when-downgrade
默认情况下。它始终传递完整路径,除非请求从 HTTPS 发送到 HTTP。火狐浏览器正在使用strict-origin-when-cross-origin
在“隐私浏览”选项卡和已知跟踪器中。
边缘正在使用no-referrer-when-downgrade
。与火狐浏览器相同。
Safari 正在使用strict-origin-when-cross-origin
。与 Chrome 相同。
勇敢正在使用no-referrer
其中引用标头被完全删除。即使对于同源请求,它也不会共享完整的 URL,您甚至无法看到跨源请求的域名。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)