Google chrome Chrome扩展中的Socket.io
我正试图在我的Chrome扩展中使用Socket.io,但由于某些原因,我无法让它工作。以下是我在my background.html中的代码:Google chrome Chrome扩展中的Socket.io,google-chrome,google-chrome-extension,socket.io,Google Chrome,Google Chrome Extension,Socket.io,我正试图在我的Chrome扩展中使用Socket.io,但由于某些原因,我无法让它工作。以下是我在my background.html中的代码: <!doctype html> <html> <head> <script src='socket.io.js'></script> <script> var socket = io.connect('http://localhost:8080/');
<!doctype html>
<html>
<head>
<script src='socket.io.js'></script>
<script>
var socket = io.connect('http://localhost:8080/');
chrome.browserAction.onClicked.addListener(function(tab) {
socket.send('hi');
});
</script>
</head>
<body>
</body>
然而,这不起作用。加载扩展时,它应该连接到Socket.io服务器,但它没有。我不知道是什么原因造成的。当我简单地运行background.html文件时,这种方法非常有效。非常感谢您的帮助 socket.io.js不是文件系统上的文件,它应该由您选择的服务器提供服务。在您的情况下,localhost:8080。socket.io.js不是文件系统中的文件,它应该由您选择的服务器提供服务。在您的例子中,localhost:8080。根据manifestv2,您应该删除标记中包含的JS代码,并将其放在外部JS文件中 内联JS根本不会执行,因此请将其放在外部JS文件中,然后将其导入background.html或使用清单中background属性的scripts属性,例如:
"background": {
"scripts": [
"socket.io.js",
"background.js"
]
}
根据manifestv2,您应该删除标签中包含的JS代码,并将其放在外部JS文件中
内联JS根本不会执行,因此请将其放在外部JS文件中,然后将其导入background.html或使用清单中background属性的scripts属性,例如:
"background": {
"scripts": [
"socket.io.js",
"background.js"
]
}
尝试使用其CDN-,并在manifest.json文件中添加
内容安全策略:脚本src'self';对象src“self”
为我工作。尝试使用其CDN-,并在manifest.json文件中添加
内容安全策略:脚本src'self';对象src“self”
为我工作。试试看