Я публикую простую строку JSON {"TMP":"-15.5826"}
веб-клиенту. Сообщение появляется в message.payloadString
Я могу распечатать его в html, но я не смог разобрать сообщение с JSON.parse()
. obj
и data
не определено .. это основная проблема, чтобы решить эту проблему. Сначала я использовал JSON.stringify()
, на этот раз разобранное сообщение, но data
по-прежнему не определено. Кажется, stringify добавляет дополнительные двойные кавычки и отменяет строку json. mqttws31.js - последний, брокер - москит 1.4.4. Что делать, чтобы получить JSON.parse()
?PAHO mqtt client (mqttws31.js) и JSON.parse() не работает
издательство через команду mosquitto: mosquitto_pub -t /main/SENSOR -m {"TMP":"-15.5826"}
function onMessageArrived(message) {
var topic = message.destinationName;
var payload = message.payloadString;
$('#ws').prepend('<li class=messagelist>' + topic + ' = ' + payload + '</li>');
var jsonString = JSON.stringify(payload);
obj = JSON.parse(jsonString); //parse with extra double quotes
//obj = JSON.parse(payload); //does not parse
var data = obj.TMP;
alert(data);
};
Каков результат этого: 'console.log (typeof полезная нагрузка, полезная нагрузка)'? Строгание и последующий синтаксический анализ не имеют смысла. – robertklep
строка {TMP: 15.5826} – thesubscriber
цитаты отсутствуют. поэтому я опубликовал {\ "TMP \": "15.5826"} .. теперь он работает .. вас очень сильно. – thesubscriber