【发布时间】:2020-10-01 19:19:47
【问题描述】:
我正在使用 Flask websocket 。并且 websocket 服务器在 5000 端口运行
这是三个不同的客户端监听 websocket 服务器 根据客户端 ID,我想向不同的客户端发送不同的消息。
在我上面,所有 weebsockets 客户端都会收到所有消息。 请让我有什么办法可以根据客户端ID,我想向不同的客户端发送不同的消息。
ws://127.0.0.1:5000/getMessage?clientId=C10
ws://127.0.0.1:5000/getMessage?clientId=C20
ws://127.0.0.1:5000/getMessage?clientId=C30
from geventwebsocket.exceptions import WebSocketError
from geventwebsocket.handler import WebSocketHandler
import gevent
from flask import Flask
from flask_sockets import Sockets
from gevent import pywsgi, Greenlet
from gevent.event import Event
if request.environ.get('wsgi.websocket'):
ws = request.environ['wsgi.websocket']
reqBody = request.args
event = Event()
ws_event.append((ws, event, None))
for ws, event, _ in ws_event:
try:
ws.send("Hello Message")
except WebSocketError as e:
event.set()
【问题讨论】:
标签: python-3.x sockets flask websocket flask-socketio