最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

无法从Broker中的MQTT消息中解析JSON

网站源码admin24浏览0评论

无法从Broker中的MQTT消息中解析JSON

无法从Broker中的MQTT消息中解析JSON

我正在使用Mosca构建MQTT服务器,并尝试将MQTT消息解析为JSON以用于数据库存储。

下面的“已发布”回调中的代码

server.on('published', (packet, client) => {
    let { payload } = packet;
    if(payload) {
        let payloadString = payload.toString();
        let payloadJson = JSON.parse(payloadString);
        console.log(payloadJson)
    }
});

JSON字符串示例为:

{“ _ id”:“ 5e928105156c40000006f9e9”,“温度”:33,“湿度”:64.9}]

但是我在第JSON.parse行中收到错误

SyntaxError:JSON中位置2处的意外令牌c

我应该如何正确解析此消息?

回答如下:

似乎您正在为项目使用MongoDB。

我不知道server.emit()端的代码是什么,因为您没有提供它。

但是在从MongoDB获取数据之前尝试传递.lean()将解决您的问题。

类似这样的东西:

const leanDoc = await MyModel.findOne().lean();

也请检查一下:https://mongoosejs/docs/tutorials/lean.html

发布评论

评论列表(0)

  1. 暂无评论