我正在创建一个 Electron 应用程序,并且根据Electron 安全教程,我添加了一个 CSP 元标记。运行应用程序时,这个问题出现在 devtools 中。
您站点
的内容安全策略阻止在 JavaScript 中使用“eval”内容安全策略 (CSP) 可防止将任意字符串评估为 JavaScript,从而使攻击者更难在您的站点上注入未经授权的代码。
为了解决这个问题,应避免使用eval(),new Function(),setTimeout([string], ...)和setInterval([string], ...)评估字符串。
无eval来电或字符串评估的其他情况下,存在于我自己的代码。该问题没有提供任何关于导致它的代码的线索,我尝试使用该'report-sample'值对输出没有影响。在 Chrome 中打开 HTML 文件时不会出现此问题。
我可以用一个非常基本的应用程序重新创建警告。
const path = require("path");
const { app, BrowserWindow } = require("electron");
const createWindow = () => {
let mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
contextIsolation: true,
nodeIntegration: false,
}
});
mainWindow.loadURL(`file://${path.join(__dirname, "/index.html")}`);
};
app.on("ready", …Run Code Online (Sandbox Code Playgroud) javascript google-chrome-devtools content-security-policy electron