所以,我正在通过Node.js从API获取信息,API服务器返回的文件是一个JSON文件,我尝试通过JSON.parse();
解析它但是没有无济于事。我尝试通过https.request();
,http.get();
和request(url, function);
调用api,我可以将返回的值放入process.stdout.write(returnedJson);
..但我可以& #39; t得到它可以遍历值,甚至选择一个特定的值。
以下是我从api获得的JSON示例...
{
status: 0,
data: [
{
TripId: 12442,
Name: John Doe,
Date: April 1, 1970
},
{
TripId: 35314,
Name: Jane Doe,
Date: April 2, 1970
}
]
}
当我使用JSON.parse(returnedJson);
时,如果我尝试使用[object Object]
console.log(returnedJson);
获得currentPage
任何帮助都会很棒!如果我需要添加更多信息,请告诉我,我会的!
答案 0 :(得分:1)
您收到的是记录的对象。如果要正确记录,请执行console.log(JSON.stringify(response, null, " "));
(引号之间的空格是4个空格 - 仅用于打印nicelooking)。
答案 1 :(得分:0)
首先,我要检查您的response
是否有有效数据
你可以这样做:
str = JSON.stringify( response );
console.log( str );
如果它有效,那么只需使用响应:
console.log( response.status );
console.log( response.data[0] );
etc...
[object object]
通常意味着您已经拥有了一个javascript对象。无需解析它。
答案 2 :(得分:0)
根据您使用的框架,您要么获取String或Object。 (看起来你正在获得一个对象)。要查看您获得的内容,请使用:
console.log(typeof(response));
如果是字符串,请使用:
response = JSON.parse(response);
将其变为对象。
一旦有了对象,就可以使用“点”符号等方式访问属性,就像任何其他javascript对象一样:
如:
console.log(response.status);
console.log(response.data[0].TripId);
console.log(response.data[1].TripId);