簡體   English   中英

JSON文件有效,但我無法解析

[英]JSON file is valid but I can't parse it

有效的JSON文件如下:

{
"response": {
    "player_count": 6453,
    "result": 1
}
}

當我使用console.log(req.responseText)命令時,我得到:

{
"response": {
    "player_count": 6453,
    "result": 1
}
}

當從我的節點服務器上使用以下內容時(通過向其發送JSON文件),在使用下面的代碼時,我得到的只是[對象對象]:我認為這就是問題所在。

app.post('/steam-output', function(req,res){
var params = [];
for (var p in req.body){
params.push({'name':p,'value':req.body[p]})
}
console.log(params);
console.log(req.body);
var context = {};
context.dataList = params;
res.render('steam-output', context);
// steam-output is a handlebars file which is what my Node.js server is running
});

//here is the steam-output.handlebars file
<h1></h1>
<ul>
{{#each dataList}}
   <li>{{this.name}}: {{this.value}}
{{/each}}
</ul>

並且它也只是帶有[object Object]。 在此方面的任何幫助將不勝感激(除非其他站點有完整的示例來解決此問題,請不要鏈接到其他站點)。

如果只是這個JSON文件,就不會發生此問題:

 {
    "player_count": 6453,
    "result": 1
 }

我認為您只是在遍歷JSON的錯誤部分。 如果將for in循環更改for in會發生什么?

for (var p in req.body.response){
    params.push({'name':p,'value':req.body.response[p]})
}

試試下面的代碼

var esr = { 
   "response":{  
      "player_count":6453,
      "result":1
   }
}

var responseText = (JSON.parse(JSON.stringify(esr)));
alert(responseText.response.player_count); //out put 6453

暫無
暫無

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

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