Vue-js内容安全政策

时间:2018-07-22 04:19:50

标签: heroku vue.js content-security-policy

我正在尝试将我的vuejs应用程序上传到heroku,但由于不方便,所以我使用了this教程。我将下面的标签添加到index.html的头部

<meta http-equiv="Content-Security-Policy" content="default-src 'self' http://localhost:5000 'unsafe-inline' 'unsafe-eval'; script-src 'self' http://localhost:5000 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline' 'unsafe-eval'; media-src *">

它仍然不起作用。我在控制台中收到以下错误:

拒绝加载图像'data:image / svg + xml; base64,_IMAGE_DATA',因为它违反了以下内容安全策略指令:“ default-src'self'”。请注意,未明确设置“ img-src”,因此将“ default-src”用作后备。

请问该如何解决? 我已经检查了堆栈溢出时其他与cordova相关的答案,但似乎没有一个适合我。

1 个答案:

答案 0 :(得分:0)

让我们尝试这种方式。

您是否在Webpack中使用了网址加载器?

如果答案为“是”,则在删除看起来像这样的代码时将起作用:

module: {
    rules: [
        {// remove the block
            test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
            loader: 'url-loader',
            options: {
                limit: 10000,
                name: utils.assetsPath('img/[name].[hash:7].[ext]')
            }
        },
    ]
}

在使用文件加载器替换url加载器时,不会使用base64引用映像。