refer两种情况下不会被发送:
- 来源页面采用的协议为表示本地文件的 "file" 或者 "data" URI,例如我们的端代理请求
- 当前请求页面采用的是非安全协议,而来源页面采用的是安全协议(HTTP)
浏览器的referfer策略
先看refer设置的策略:
developer.mozilla.org/zh-CN/docs/…
如何设置refer策略
- 通过请求头的首部 Referrer-Policy=
- 通过html的meta设置全局的refer策略
兼容性
developers.google.com/web/updates…
chrome85版本之后,默认的策略是strict-origin-when-cross-origin,页面和请求同为同一个安全级别下,refer为页面origin的值