gpt4 book ai didi

javascript - 为什么我没有从 JS 客户端(作为 Chrome 扩展)收到任何内容?

转载 作者:太空宇宙 更新时间:2023-11-03 21:19:06 25 4
gpt4 key购买 nike

简介

我正在学习 JS(在搞乱了一点 Java 之后),我偶然发现了 javascript 中的套接字。

问题

我创建了一个正在监听的 python 服务器,然后我将 JS 扩展加载到 Chrome,但服务器没有收到任何消息。我哪里做错了或者我错过了什么?

ma​​nifest.Json(也许它是相关的,因为我无法将此 .js 作为“背景”)

 {
"manifest_version": 2,
"name": "Server-Test-Ext",
"version": "0.1",

"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["socket.js", "client.js"]


}]


}

client.js(来自 Socket.io 网站的示例)

var socket = new io.Socket();

socket.connect('https://localhost:8080');

socket.on('connect', function(){
// connected!
});
socket.on('message', function(msg){
// message coming
});
socket.send('Hello world!');

server.py

import socket

HOST = '127.0.0.1'
PORT = 8080

with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.bind((HOST, PORT))
s.listen()
conn, addr = s.accept()
with conn:
print('Connected by', addr)
while True:
data = conn.recv(1024)
if not data:
break
conn.sendall(data)

服务器成功创建 tcp(您可以通过输入 CMD netstat -an 来查看)

注释:

- I am using Visual Studio Code (cool text editor, still learning it)
- I am new to the subject (self-taught)

我的期望是在 python 服务器上接收消息,该服务器在 ext 之前运行。显然。

感谢您对此问题的兴趣。

最佳答案

您需要向您的manifest.js声明套接字权限。

详情: https://developer.chrome.com/apps/manifest/sockets

关于javascript - 为什么我没有从 JS 客户端(作为 Chrome 扩展)收到任何内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54445553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com