簡體   English   中英

如何保存JSON並訪問對象

[英]How can i save the JSON and access the objects

我當前正在使用MQTT pub / sub,每當主題發布時,我都會收到一條消息,並且我收到的消息是並且可能隨主題而變化。

收到的JSON已分配給消息

 client.on('message', function (topic, message) { cmd: 'set', reqid: 'string', objects: [ { type: 'devices', data: ["tring"], execution: {"command": "OnOff", "params": { "on": true }} } ] } 

我想將JSON保存在變量中並從中訪問對象。

在此處輸入圖片說明

JSON是字符串,每當我嘗試訪問其對象(如message.cmd)時,它都會顯示“ undefined”

試試這個

var data = JSON.parse(strData);  // strData is what you got in response. 
console.log(data);  

更新

我檢查了您的JSON,發現該問題在JSON的引號中。 如果您可以更新響應,只需將res設置為此。

{
  "cmd":"set",
  "reqid":"string",
  "objects":[
    {
      "type":"devices",
      "data":["string"],
    "execution":{
      "command":"OnOff",
      "params":{
      "on":true
    }
   }
  }
 ]
}

然后,您也不需要parse數據。 您可以自己直接訪問對象。

console.log("Parse data is :::",txt.cmd);

圖片

要將JSON字符串轉換為對象,請使用

var recObject = JSON.parse(stringJson);

要將其轉換回字符串,請使用

var jsonStr = JSON.stringify(recObject);

通過JSON.parse()的幫助:

var data = JSON.parse(stringData);
console.log(data);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM