this is server.py
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
tokenList = {}
@app.route("/test")
def testConnect():
sid = tokenList["114514"]
print(sid)
emit('newMission', {'from': 'server'}, namespace="newMission", to=sid)
return 'success'
@socketio.on('register')
def register(data):
print("服务器%s尝试注册" % data["secret"])
emit('register', {"token": "1919810"})
print("注册成功,token为%s" % "1919810")
sid = request.sid
join_room("mainRoom")
tokenList["114514"] = sid
"""@socketio.on('message')
def message(data):
print(data) # {'from': 'client'}
emit('response', {'from': 'server'})
sleep(5)
emit('response', "exit")"""
if __name__ == '__main__':
socketio.run(app, debug=True, host='127.0.0.1', port=8090)
and this is client.py
import socketio
sio = socketio.Client()
@sio.event()
def connect():
print('正在注册,请稍后')
sio.emit('register', {'secret': '114514'})
@sio.on('register')
def isReg(data):
print("注册成功,当前token为" + data["token"])
@sio.on("newMission", namespace="message")
def newMission(data):
print(data)
sio.connect('ws://localhost:8090')
sio.wait()
Client will connect to server,and server will get sid.However,when I try to push message by sid,client can't receive any message from server.I don't know how to solve this.
I am not good in English,sorry(