Javascript 如何使用节点JS向ActiveMQ发送JSON对象消息
我正在使用ActiveMQ。我需要将JSON对象作为消息发送到其中。我尝试了以下代码:Javascript 如何使用节点JS向ActiveMQ发送JSON对象消息,javascript,node.js,activemq,Javascript,Node.js,Activemq,我正在使用ActiveMQ。我需要将JSON对象作为消息发送到其中。我尝试了以下代码: const stompit=require('stompit'); 跺脚连接({ 主机:“localhost”, 端口:61613 },函数(错误,客户端){ const sendHeaders={ “目的地”:“/queue/newQ”, “内容类型”:“应用程序/json” }; 常量文本={ 姓名:“山姆”, 地址:{ 门牌号码:4,, 街道:“第四大道”, 城市:“纽约” } } const fram
const stompit=require('stompit');
跺脚连接({
主机:“localhost”,
端口:61613
},函数(错误,客户端){
const sendHeaders={
“目的地”:“/queue/newQ”,
“内容类型”:“应用程序/json”
};
常量文本={
姓名:“山姆”,
地址:{
门牌号码:4,,
街道:“第四大道”,
城市:“纽约”
}
}
const frame=client.send(sendHeader);
框架。写(文本);
frame.end();
});
但它不起作用。有人能告诉我这里有什么问题吗?跺脚是最重要的。我强调文本,因为你的信息必须是文本。不能像JavaScript JSON变量那样发送二进制数据。用于将JSON变量转换为字符串:
const text={
姓名:“山姆”,
地址:{
门牌号码:4,,
街道:“第四大道”,
城市:“纽约”
}
}
const frame=client.send(sendHeader);
write(JSON.stringify(text));
然后,当您收到消息时,您可以将该字符串封送回实际的JSON对象,该对象使用您为使用者使用的任何编程语言。如果您正在为消费者使用Javascript,您可以使用它来实现这一点,例如
var myJsonObj=JSON.parse(messageBody);
跺脚是最重要的。我强调文本,因为你的信息必须是文本。不能像JavaScript JSON变量那样发送二进制数据。用于将JSON变量转换为字符串:
const text={
姓名:“山姆”,
地址:{
门牌号码:4,,
街道:“第四大道”,
城市:“纽约”
}
}
const frame=client.send(sendHeader);
write(JSON.stringify(text));
然后,当您收到消息时,您可以将该字符串封送回实际的JSON对象,该对象使用您为使用者使用的任何编程语言。如果您正在为消费者使用Javascript,您可以使用它来实现这一点,例如
var myJsonObj=JSON.parse(messageBody);
您应该将对象字符串化,然后在另一端将其解析为json。@aaditya它可以工作,但这是唯一的方法吗?我不想转换。我的回答回答了你的问题吗?如果是,请将其标记为正确,以帮助将来遇到此问题的其他用户。谢谢您应该将对象字符串化,然后在另一端将其解析为json。@aaditya它可以工作,但这是唯一的方法吗?我不想转换。我的回答回答了你的问题吗?如果是,请将其标记为正确,以帮助将来遇到此问题的其他用户。谢谢