我正在使用sails框架(基于express)和node.js开发一个web应用程序,并使用第三方图像解决方案transloadit(不需要知道transloadit)。
无论如何,这不是问题所在,我能够实现transloadit表单并从他们的api接收信息。
我的问题是,transloadIt将响应作为字符串提供给我,我需要访问响应对象,所以我使用var objRes = JSON.parse(req.body.transloadit);
将其解析为json对象,当我console.log(objRes);
没有正确解析对象时,我得到了这样的结果:(参见这里的所有jsonhttps://gist.github.com/kevinblanco/9631085)
{
a bunch of fields here .....
last_seq: 2,
results: {
thumb: [
[
Object
]
]
}
}
我需要
thumb
数组中的数据,我的问题是,解析时为什么要这样做?这里是整个request
req.body
对象:https://gist.github.com/kevinblanco/9628156正如您所看到的,transloadit
字段是一个字符串,我需要它们的一些字段中的数据。提前谢谢。
最佳答案
JSON的解析没有问题——事实上根本没有问题。
log consol.log限制了打印内容的深度,这也是您在输出中看到[对象]的原因。
如果您想在node.js中看到完整的输出,那么只需像这样使用inspect实用程序;
console.log(util.inspect(yourobject,{depth:null}));
这将打印出全部内容。
注意,这只是console.log打印它的一个工件。