Flask Socketio前后端通信问题

来源:互联网 发布:蜘蛛侠英雄归来 知乎 编辑:程序博客网 时间:2024/05/16 02:01

最近在用socketio进行前后端通信时遇到一个问题:前端可以向后台发送数据,但是后台却无法把数据发送到前端。

前端采用socketio 后台使用falsk-socketio

代码具体实现请参考:使用Flask SocketIO实现WebSocket | 风中飞舞

最后发现问题所在:

socketio.emit与emit是不同的,具体可以自己看函数的定义,socketio.emit()是用路由修饰的,而emit()是由socketio.on修饰的。

因此参照上述链接中的代码,应该是;

@socketio.on('my event', namespace='/test')def test_message(message):    emit('my response', {'data': message['data'])
这里的emit是:

from flask.ext.socketio import SocketIO, emit
而我出错的代码是:

@socketio.on('my event', namespace='/test')def test_message(message):    socketio.emit('my response', {'data': message['data'])//注意用socketio.on修饰的话直接用上面代码中的emit就可以
一个小错误,搞了一晚上,写个博客以免再犯!





原创粉丝点击