当前位置: 首页 > 知识库问答 >
问题:

CSP拒绝加载脚本,违反了以下内容安全策略指令:"Script-src'自己'"

皇甫树
2023-03-14

有人能告诉我如何将CSP元标记添加到标题中吗?我尝试将不同的meta标记添加到我的头中,但CSP的错误更多

<meta http-equiv="Content-Security-Policy" content="default-src 'self' https:*//api.mapbox.com/mapbox-gl-js/v2.3.1/mapbox-gl.js;">

<meta http-equiv="Content-Security-Policy" content="default-src 'self' data:gap 'unsafe-eval' ws: ; style-src 'self' 'unsafe-inline' script-src *; media-src *; font-src *;  connect-src *; img-src 'self' data: content:;">

控制台错误堆栈

共有1个答案

淳于升
2023-03-14

看起来您已经通过HTTP标头发布了CSP,因为控制台错误显示:

它违反了以下内容安全策略指令default-src'自己'

而您的元标记包含其他默认src来源:默认src'self'https://api.mapbox.com/mapbox-gl-js/v2.3.1/mapbox-gl.js

您可以检查您拥有的CSP响应HTTP标头,教程在这里。

在这种情况下,通过添加meta标记,您将有两个CSP,它们将彼此独立工作,因此HTTP头中的CSP将继续阻止您的脚本。

Node.js在dependencies中有一个头盔中间件,头盔4通过HTTP头自动发布默认CSP。检查它。
在这种情况下,您有两种选择:

  • 禁用头盔的CSP:app.use(头盔({contentSecurityPolic: false, }) );并使用meta标记。
  • 通过头盔(首选方式)配置CSP报头。

顺便说一句,您在以下方面有错误:

default-src 'self' data:gap 'unsafe-eval' ws: ; style-src 'self' 'unsafe-inline' script-src *; media-src *; font-src *;  connect-src *; img-src 'self' data: content:;
  1. data:gap来源错误,请根据需要使用data:data:gap:
  2. 错过 之前脚本src

 类似资料:
  • 问题内容: 当我尝试将我的应用程序部署到5.0.0以上的android系统的设备上时,我一直收到以下错误消息: 07-03 18:39:21.621:D / SystemWebChromeClient(9132):file:///android_asset/www/index.html:第0行:拒绝加载脚本“ http:// xxxxx ”,因为它违反了以下内容安全策略指令:“ script-sr

  • 当我尝试将我的应用程序部署到Android系统高于5.0.0(Lollipop)的设备上时,我不断收到以下错误消息: 07-03 18:39:21.621:D/SystemWebChromeClient(9132):file:///android_asset/www/index.html: 第0行:拒绝加载脚本的http://xxxxx'因为它违反了以下内容安全策略指令:“script src's

  • 我尝试通过cryptojs库加密用户数据,并通过ajax发送到服务器,但控制台显示错误: 拒绝加载脚本'https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/crypto-js.min.js',因为它违反了以下内容安全策略指令:脚本-src'自我'https://apis.google.com'不安全评估'。请注意,没有显式设置脚本-src-

  • 我正在尝试开发一个渐进式Web应用程序,它包括一个外部JavaScript、一个外部CSS、JQuery库以及清单和服务工作者。 我设置了内容安全策略来加载这些内容,并在localhost和Google Chrome上运行它。 这是我的超文本标记语言头: 我希望一切都能正常运行,但相反,我得到的错误与我的声明不符: 拒绝加载脚本的https://ajax.googleapis.com/ajax/l

  • 当我将图像上传到我的web应用程序中时,它显示以下错误 拒绝加载图像'

  • 我正在学习将Cordova与jquery mobile结合使用,我有以下错误: 拒绝执行内联脚本,因为它违反了以下内容安全策略指令:“默认src“self”数据:间隙:https://ssl.gstatic.com “不安全评估”。启用内联执行需要'unsafe inline'关键字、哈希('sha256-iacGaS9lJJpFDLww4DKQsrDPQ2lxppM2d2GGnzCeKkU=')