我可以在angular 9中使用kafka consumer/producer吗连接节点服务器?

a2mppw5e  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(408)

我正在尝试使用angular-9和node.js服务器从客户端连接kafka。
这个代码在节点上运行我想在angular9上做同样的事情”

const kafka = require('kafka-node');
const bp = require('body-parser');
const config = require('./config');

try {
  const Consumer = kafka.HighLevelConsumer;
  const client = new kafka.Client(config.kafka_server);
  let consumer = new Consumer(
    client,
    [{ topic: config.kafka_topic, partition: 0 }],
    {
      autoCommit: true,
      fetchMaxWaitMs: 1000,
      fetchMaxBytes: 1024 * 1024,
      encoding: 'utf8',
      fromOffset: false
    }
  );
  consumer.on('message', async function(message) {
    console.log('here');
    console.log(
      'kafka-> ',
      message.value
    );
  })
  consumer.on('error', function(err) {
    console.log('error', err);
  });
}
catch(e) {
  console.log(e);
}
dnph8jn4

dnph8jn41#

正如@onecricketeer上面所说的,如果你将kafka代码发送给客户,那么你需要在代理上更新你的广告侦听器。。。但是在浏览器中运行kafka客户端是不可能的
最好使用websockets,因此我为它制作了一个微服务(nodejs)来与后端服务器通信,我的客户端将使用socketio与该微服务(nodejs)通信

相关问题