我有一条在服务器端生成的消息。
根据flask-socketio doc,您可以通过socketio.emit
或socketio.send
消息是在Kafka消费者
topicReply = 'botReply'
consumerReply = KafkaConsumer(topicReply, value_deserializer=lambda m: json.loads(m.decode('ascii')))
for message in consumerReply:
fromConsumer(message.value)
我通过简单地调用server.py
方法将此消息发送到fromConsumer
,如上所示。
然后在我的server.py
中,我致电socketio.emit
将其发送给客户
app = Flask(__name__)
socketio = SocketIO(app)
def fromConsumer(msg):
socketio.emit('reply', msg)
if __name__ == '__main__':
socketio.run(app)
然后在我的客户端javascript
var socket = io.connect('http://localhost:1000/');
socket.on('reply', function(msg) {
console.log('Received reply');
console.log(msg)
});
这应该会在浏览器的javascript控制台中显示收到的回复消息,但我看不到任何内容。
我错过了什么?请建议。