拒绝加载图像“blob:...”,因为它违反了以下内容安全策略

Raz*_*Raz 15 html mapbox content-security-policy

我收到此错误:

Refused to load the image 'blob:file:///cf368042-bf23-42b6-b07c-54189d3b0e01' because it violates the following Content Security Policy directive: "default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:". Note that 'img-src' was not explicitly set, so 'default-src' is used as a fallback.
Run Code Online (Sandbox Code Playgroud)

在尝试加载 mapboxGL 地图时。这是我的 CSP 标签:

<meta http-equiv="Content-Security-Policy" 
    content="
      worker-src blob:; 
      child-src blob: gap:;
      default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
Run Code Online (Sandbox Code Playgroud)

Raz*_*Raz 30

这是图像和 base64 的修复程序。

需要添加img-src 'self' blob: data:;如下:

<meta http-equiv="Content-Security-Policy" 
    content="
      worker-src blob:; 
      child-src blob: gap:;
      img-src 'self' blob: data:;
      default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
Run Code Online (Sandbox Code Playgroud)

  • 这里的“data:”有什么用?可以添加 `img-src 'self' blob:` 来代替,对吗? (6认同)
  • 由于安全原因,'unsafe-inline' 'unsafe-eval' *可能*不是更好的选择。 (2认同)