相关疑难解决方法(0)

如何在 python-socketio 中将消息从 python 服务器发送到 javascript 客户端?

socketio 客户端成功连接到服务器并向emit服务器发送消息,但向客户端的另一个方向服务器失败。我找不到错误的根源。这是

\n\n

这是基于python-socketioapp.py网站中的示例的服务器 python :

\n\n
from aiohttp import web\nimport socketio\n\nsio = socketio.AsyncServer()\napp = web.Application()\nsio.attach(app)\n\nasync def index(request):\n    """Serve the client-side application."""\n    with open(\'index.html\') as f:\n        return web.Response(text=f.read(), content_type=\'text/html\')\n\n@sio.on(\'connect\', namespace=\'/chat\')\ndef connect(sid, environ):\n    print("connect", sid)\n\n@sio.on(\'chat message\', namespace=\'/chat\')\nasync def message(sid, data):\n    print("server received message!", data)\n    await sio.emit(\'reply\', data)\n    await sio.send(data)\n\n@sio.on(\'disconnect\', namespace=\'/chat\')\ndef disconnect(sid):\n    print(\'disconnect\', sid)\n\napp.router.add_static(\'/static\', \'static\')\napp.router.add_get(\'/\', index)\n\nif __name__ == \'__main__\':\n    web.run_app(app)\n
Run Code Online (Sandbox Code Playgroud)\n\n

我尝试评论其中之一await sio.emit(\'reply\', data)或await sio.send(data)但结果是相同的。这是 javascript 客户端index.html:

\n\n
<html>\n  <head>\n    <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/1.3.5/socket.io.min.js"></script>\n …
Run Code Online (Sandbox Code Playgroud)

javascript python websocket socket.io python-socketio

6
推荐指数
1
解决办法
2万
查看次数