设置Referrer-Policy后为什么请求头还是带Referer? Mr-文科 提问于 2026-01-29 20:23:22 阅读 74 安全 在Vue项目里设置了标签,但用axios发请求时发现Referer头还是包含了完整URL,是不是哪里设置错了? 代码是这样写的: <meta name="referrer" content="no-referrer-when-downgrade" > 用开发者工具检查网络请求,跨域请求的headers里Referer明明应该被限制,但实际还是显示完整来源地址。试过把策略改成”no-referrer”也不管用,有没有可能和axios的配置冲突? 我来解答 赞 14 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 2 条解答 一丽苹 Lv1 标签的referrer策略只对页面本身的资源加载生效,比如图片、脚本等,不会影响axios这类通过JS发起的请求。如果你不想让axios请求带Referer头,直接在axios配置里删掉它就行: axios.defaults.headers.common['Referer'] = undefined; 试试看,应该就能解决你的问题。 回复 点赞 11 2026-02-01 21:02 UX红梅 Lv1 这个是针对页面跳转的 Referer 控制,但和 axios 发起的 AJAX 请求没关系。浏览器对 XMLHttpRequest 和 Fetch API(axios 基于这个)有不同规则,meta 标签管不着这些。 如果你想控制 axios 的 Referer,直接在 axios 请求头里覆盖它就行: axios.get('https://example.com/api', { headers: { 'Referer': '' // 或者设置为你想要的值 } }) 如果要全局生效,配个默认值: axios.defaults.headers.common['Referer'] = ''; 懒得折腾的话就认命吧,反正 Referer 存在是为了让服务器知道请求来源,没那么可怕。 回复 点赞 16 2026-01-31 14:05 加载更多 相关推荐 1 回答 40 浏览 前端请求被拦截,Referrer Policy 到底该怎么配? 我在做跨域请求时老是被浏览器拦掉,控制台提示“Referrer Policy 限制了 referer 头”。试过在 meta 里加 <meta name="referrer" content="... 欧阳亚会 安全 2026-03-25 14:58:23 2 回答 40 浏览 Referer检查防CSRF真的可靠吗?为什么我设置了还是被绕过? 我们后端加了Referer检查来防CSRF,但测试时发现攻击者用空Referer或者同域跳转就能绕过。我前端也试过加一些header,但好像没用。是不是这种防护方式本身就不太靠谱? 另外,我在页面里用... 朱莉🍀 安全 2026-02-27 18:07:19 1 回答 32 浏览 CORS请求中Referrer检查到底有没有用? 我最近在做前端调用后端API,遇到CORS问题。后端同事说他们加了Referrer检查来防止跨域请求,但我听说这并不安全?我自己试了一下,发现即使设置了Referer,浏览器还是会因为CORS策略拦掉... 爱学习的子斌 安全 2026-03-29 19:28:18 1 回答 41 浏览 Cross-Origin-Opener-Policy 设置后为什么 window.open 无法访问新窗口? 我在项目里加了 Cross-Origin-Opener-Policy: same-origin 响应头,结果发现用 window.open 打开同域页面后,拿不到新窗口的引用了,报错说“Blocked... A. 慧娇 安全 2026-03-20 15:56:23 2 回答 42 浏览 CORS 请求中 Referrer 检查到底安不安全? 我在做前端请求时,后端同事说他们加了 Referrer 检查来防止跨域攻击,但我听说这其实不靠谱? 比如我用 fetch('/api/data') 发请求,浏览器自动带上了 Referer 头,但这个... 采涵 Dev 安全 2026-02-26 10:00:20 2 回答 45 浏览 Cross-Origin-Opener-Policy 设置后为什么页面打不开新窗口了? 我在 Vue 项目里加了 Cross-Origin-Opener-Policy: same-origin 安全头,结果用 window.open 打开新页面时直接被拦截了,控制台报错说“Blocked... ___凡敬 安全 2026-02-25 23:15:22 2 回答 82 浏览 设置Cross-Origin-Resource-Policy后图片还是被阻止了怎么办? 我给服务器配置了cross-origin-resource-policy: same-site,但跨域加载图片时还是出现这个错误:Blocked by Cross-Origin Resource Po... 程序员建宇 安全 2026-02-04 19:16:34 2 回答 88 浏览 为什么设置了Permissions-Policy头后,我的Web Worker突然报错? 我在项目里加了Permissions-Policy头想限制一些API权限,结果发现之前正常工作的Web Worker突然报错"NotAllowedError: The operation is not... 南宫利娜 安全 2026-02-01 16:22:25 1 回答 23 浏览 CSP 的 frame-ancestors 设置后为什么还是被嵌入了? 我在项目里加了 Content-Security-Policy 响应头,设置了 frame-ancestors 'self',按理说第三方网站不应该能用 iframe 嵌入我的页面,但测试时发现还是可... 雅雯 Dev 安全 2026-03-30 13:12:14 1 回答 30 浏览 Cross-Origin-Embedder-Policy 设置后图片加载失败怎么办? 我在项目里加了 Cross-Origin-Embedder-Policy: require-corp 安全头,结果页面上很多第三方图片直接挂了,控制台报错说“Blocked by CORP”。 这些图... 程序员竞兮 安全 2026-03-30 08:23:13
试试看,应该就能解决你的问题。
如果你想控制 axios 的 Referer,直接在 axios 请求头里覆盖它就行:
如果要全局生效,配个默认值:
懒得折腾的话就认命吧,反正 Referer 存在是为了让服务器知道请求来源,没那么可怕。