gpt4 book ai didi

javascript - 如何使用 Node JS 向 ActiveMQ 发送 JSON 对象消息

转载 作者:行者123 更新时间:2023-12-01 00:24:30 26 4
gpt4 key购买 nike

我正在使用 ActiveMQ。我需要将 JSON 对象作为消息发送到其中。我尝试了以下代码:

const stompit = require('stompit');

stompit.connect({
host: 'localhost',
port: 61613
}, function (error, client) {
const sendHeaders = {
'destination': '/queue/newQ',
'content-type': 'application/json'
};
const text = {
name: "Sam",
addr: {
doorNo: 4,
street: "4th Avenue",
city: "New York"
}
}

const frame = client.send(sendHeaders);
frame.write(text);
frame.end();
});

但它不起作用。谁能告诉我这里出了什么问题吗?

最佳答案

STOMP 是 Simple (or Streaming) Text Orientated Messaging Protocol 。我强调文本,因为您的消息必须采用文本形式。您无法像 JavaScript JSON 变量那样发送二进制数据。使用JSON.stringify()将 JSON 变量转换为字符串:

const text = {
name: "Sam",
addr: {
doorNo: 4,
street: "4th Avenue",
city: "New York"
}
}

const frame = client.send(sendHeaders);
frame.write(JSON.stringify(text));

然后,当您收到消息时,您可以使用您为消费者使用的任何编程语言将该字符串编码回实际的 JSON 对象。如果您为消费者使用 Javascript,您可以使用 JSON.parse()为此,例如

var myJsonObj = JSON.parse(messageBody); 

关于javascript - 如何使用 Node JS 向 ActiveMQ 发送 JSON 对象消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59138896/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com