使用node.js amqp模块时,如何将AQMP消息缓冲区转换为JSON对象



我使用node.js amqp模块从队列中读取消息。以下是队列中有可用消息时调用的回调:

function onMessage(message, headers, deliveryInfo)
{
    console.log(message); //This prints buffer
    //how to convert message (which I expect to be JSON) into a JSON object.
    //Also how to get the JSON string from the 'message' which seems to be a buffer
}

谢谢。

如果您收到一个包含JSON的缓冲区,则需要将其转换为字符串,以向控制台输出有意义的内容:

console.log(message.toString())

如果您想将该字符串转换为完整的JavaScript对象,那么只需解析JSON:

var res = JSON.parse(message.toString())

编辑:节点amqp似乎能够直接发送JavaScript对象(请参阅此处),您不应该接收缓冲区,而应该接收JavaScript对象。。。检查您发送信息的方式。

message.data.toString()返回了适当的JSON字符串。

相关内容

  • 没有找到相关文章

最新更新