我已经使用 Kafkajs 创建了一个 Apache Kafka 客户端,并且我正在尝试从 Kafka 中的某个主题中读取消息。如果我 console.log(message) 工作正常。但是我想每当在主题中产生/写入新消息时向客户端发送消息,消费者正在收听来自生产者的消息,同时保持连接处于活动状态。
// function, which is being called whenever it's specified route is being requested
async readMessage(req, res, next, consumer) {
const resMessage = {};
res.writeHead(200, {'Content-Type': 'text/plain'});
await consumer.run({
eachMessage: async ({ topic, partition, message }) => {
res.write(message.value.toString());
},
});
// res.send(resMessage);
}
但是在我将数据发送到 express.js 服务器后, res.write() 不会将数据发送到客户端(我使用 Postman 作为我的 Node.js 客户端)。如何在调用 res.end() 之前刷新 res.write() 中写入的数据?