我几乎阅读了互联网上可用的每篇文章,但似乎对我的情况没有任何作用。我已经安装了 Flask-socketio 并且一切正常,直到我从 app.py 以外的模块发出消息。
我尝试了几种方法来实现这一点,并且我还通过使用 Redis 阅读了有关它的文档,但它对我也不起作用。这是我拥有的代码片段。
应用程序
from flask import Flask
from flask import request
from flask_socketio import send, SocketIO, emit, join_room
app = Flask(__name__)
# This is to stop force sorting in response, by default jsonify sorts the response keys alphabetically
app.config["JSON_SORT_KEYS"] = False
socketio = SocketIO(app, cors_allowed_origins="*")
@socketio.on('join')
def client_join_room(data):
print(type(data))
room = data['room']
join_room(room)
send('you have entered the room.', room=room)
@app.route('/msg')
def send_message():
socketio.emit("message", "Server message", room='my_room')
return "I got you."
if __name__ == '__main__': …Run Code Online (Sandbox Code Playgroud)