You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Chrome提示CSP指令'require-sri-for'依赖已禁用的实验性标志?

关于CSP require-sri-for script 控制台提示的解析与解决

你猜的完全没错!这个提示本质就是浏览器在告诉你:你配置的require-sri-for script指令根本没用武之地,因为对应类型的资源已经被你完全禁用了。

为什么会出现这个提示?

核心逻辑很简单:

  • require-sri-for script的作用是强制要求所有允许加载的脚本必须附带SRI哈希验证,它生效的前提是你得先允许加载脚本啊!
  • 如果你的CSP里script-src设成了'none',意味着没有任何脚本能被加载,这个指令就成了“空指令”——浏览器检测到这种矛盾,就会抛出这个提示,告诉你这个指令依赖的「资源加载权限」是禁用状态。

怎么解决?

根据你的实际需求选下面两种方案就行:

  1. 直接移除冗余指令:如果你确实不需要加载任何脚本(保持script-src 'none'),删掉require-sri-for script就完事了,省得浏览器瞎操心。
  2. 调整CSP配置匹配需求:如果需要加载脚本,先把script-src改成允许合法来源(比如script-src 'self'、具体CDN域名,或者必要的'unsafe-inline'),同时确保所有加载的脚本都带上SRI哈希。这时候require-sri-for script就能正常发挥作用,提示自然就消失了。

小验证技巧

你可以临时把script-src改成'self',给页面里的某个脚本加上SRI哈希,再刷新页面看看——这时候控制台肯定不会再出这个提示了,因为浏览器确认有可加载的脚本,require-sri-for指令有了生效的场景。

内容的提问来源于stack exchange,提问作者jamieweb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:01:36