如何在flask-socketio中发送工作?

时间:2018-04-20 03:08:40

标签: python websocket socket.io flask-socketio

我无法理解sendflask-socketio函数的工作原理。

例如,我使用flask-socketio作为服务器,使用socket.io作为客户端:

服务器:

@socketio.on("test")
def handle_test():
    send("Wow")

客户端:

socket.emit('test', "", (data) => {
    console.log(data);
});

我想我可以从服务器端获得data,但我错了。我一无所获。

我知道我可以根据事件构建一个结构。但我无法理解send是如何运作的。它会向客户发送回复吗?如果是的话,我怎么能得到那个回应呢?如果它不会,它会做什么?

1 个答案:

答案 0 :(得分:1)

首先,我建议您使用emit()代替send()

要从客户端发送到服务器,请使用:

socket.emit('test', {data: 'my data'});

在服务器上,您可以接收该事件,然后回发给客户端:

@socketio.on('test')
def handle_test():
    emit('wow');

要在客户端接收第二次发射,请执行以下操作:

socket.on('wow', function(data) {
    console.log(data);
});
相关问题