用 Python flask_socketio 反应 socket.io-client 不处理事件
Posted
技术标签:
【中文标题】用 Python flask_socketio 反应 socket.io-client 不处理事件【英文标题】:React socket.io-client with Python flask_socketio not handling events 【发布时间】:2020-03-14 20:34:45 【问题描述】:我正在我的应用程序上实现 websockets。连接发生,但回声事件永远不会触发,我不明白为什么。服务器成功为我的 index.html 提供服务,并且“已连接”行确实登录了我的服务器,并且我的前端没有收到任何 404 或拒绝连接或服务器上的错误。
客户端代码:
componentDidMount()
const socket = socketIOClient(ipaddress)
socket.on('connection', () => socket.emit('echo', data: 'hello' ))
socket.on('echoresponse', ( data ) =>
console.log(data)
socket.disconnect()
)
服务器代码:
app = Flask(__name__,
static_url_path='',
static_folder='dist',
template_folder='dist')
socketio = SocketIO(app)
@app.route('/')
def home():
return app.send_static_file('index.html')
@socketio.on('connect')
def connected():
print('Connected')
@socketio.on('disconnect')
def disconnected():
print('Disconnected')
@socketio.on('echo')
def echo(message):
emit('echoresponse', 'data': message['data'])
socketio.run(app, host='0.0.0.0', port=80)
【问题讨论】:
你在服务器端的echo
函数是否被调用了?
不,我尝试了打印语句并没有触发
【参考方案1】:
这是一个错字。在我的客户端代码中,当我应该写“连接”时,我写了“连接”。
【讨论】:
以上是关于用 Python flask_socketio 反应 socket.io-client 不处理事件的主要内容,如果未能解决你的问题,请参考以下文章
以设定的时间间隔从 flask_socketio 服务器发出事件
使用 flask_socketio + flask + gunicorn + nginx 获得 502 bad gateway 和 400 bad request