MessageProcess: function(topic, payload) { var that = this; //var payload_string = payload.toString(); //var jsonObj = JSON.parse(Uint8ArrayToString(payload)); var jsonObj = JSON.parse(payload); var payload_areaA = jsonObj.aA; var payload_areaB = jsonObj.aB; var payload_areaC = jsonObj.aC; var payload_areaD = jsonObj.aD; if (topic == that.data.topic.areaTopic) { that.setData({ 'value.areaAValue': payload_areaA, 'value.areaBValue': payload_areaB, 'value.areaCValue': payload_areaC, 'value.areaDValue': payload_areaD, }) } 找到问题了 发出去的数据被收到了 发出去的数据不是json格式的 所以报错 解决方法 var payload = JSON.stringify(payload) var jsonObj = JSON.parse(payload); 先将收到的负荷转为json字符串格式即可
Unexpected token c in JSON at position 0 ?[图片] [图片] 同样的代码 引用的mqtt.js是一样的 在一个程序中可以用‘ckoff1’直接发送 一个只能发送json格式的数据 发送‘ckoff1’就报以上错误 有没有大佬给点思路 我想发不是json格式的
2021-06-24