(electron with server)uncaught evalerror:拒绝将字符串作为javascript求值,因为“不安全求值”不是允许的脚本源

ih99xse1  于 2021-09-23  发布在  Java
关注(0)|答案(1)|浏览(433)

我正在尝试制作一个电子应用程序,用户可以选择“托管私人服务器”或“加入私人服务器”。这样,用户就可以与主机或其他用户交换消息,或者创建一个其他用户可以加入的房间
当我的代码在main.js(electron应用程序运行的地方)上时,服务器生成时没有任何问题。但是,当我尝试将相同的代码放在server.js中并在html文件中引用它(使用<script src”“>)时,此代码停止工作并显示以下内容:
c:\users\lages\desktop\pasta du apepe\electron quick start\node\u modules\depd\index.js:413 uncaught evalerror:拒绝将字符串作为javascript求值,因为在以下内容安全策略指令中,“script src'self”“unsafe inline”不是允许的脚本源:“script src'self”“unsafe inline”

at Function.wrapfunction [as function] (C:\Users\lages\Desktop\Pasta du apepe\electron-quick-start\node_modules\depd\index.js:413)
at Object.<anonymous> (C:\Users\lages\Desktop\Pasta du apepe\electron-quick-start\node_modules\body-parser\index.js:37)
at Object.<anonymous> (C:\Users\lages\Desktop\Pasta du apepe\electron-quick-start\node_modules\body-parser\index.js:159)
at Module._compile (internal/modules/cjs/loader.js:1078)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1108)
at Module.load (internal/modules/cjs/loader.js:935)
at Module._load (internal/modules/cjs/loader.js:776)
at Function.f._load (electron/js2c/asar_bundle.js:5)
at Function.o._load (electron/js2c/renderer_init.js:33)
at Module.require (internal/modules/cjs/loader.js:959)

你知道如何解决这个错误吗?
我的代码

let ligar_desligar = document.getElementById("botao3")
let statusServer= false 
const expresso= require("express")
var limpador = require("string-sanitizer");
const appe = expresso()
const httpServer = require("http").createServer(appe);
const options ={  
}
const io = require("socket.io")(httpServer, options);
appe.use(expresso.static(__dirname+"/data"))
httpServer.listen(8889, ()=>console.log("adm online na porta http://localhost:8889"))
//SERVER EVENTS SECTION
io.on("connection", (socket) => { 
    console.log("nova conexao, o cara conectado e ID: ", socket.id)
    socket.on("manda", (arg) => {
        limpeza(arg)
        console.log("recebi: ",arg); // world
        socket.broadcast.emit("devolve", arg)
        socket.emit("devolve", arg)
    });
})
function limpeza(palavra){
    limpador.sanitize.keepSpace(palavra); // abcdefgh123
}
rggaifut

rggaifut1#

问题解决了,我只需要补充一下
meta http equiv=“内容安全策略”content=“默认src‘self’;样式src‘self’;脚本src“self”“unsafe eval”
在html中的元标记中

相关问题