Проблема с JSON.parse, не знаю почему не все разбирает
Я разрабатываю веб-приложение с Node.js, используя платформу Sails (на основе Express), и использую стороннее решение для работы с изображениями под названием Transloadit (нет необходимости знать Transloadit).
В любом случае, это не проблема, я смог реализовать форму Transloadit и получить информацию от их API.
Моя проблема в том, что Transloadit дает мне ответ в виде строки, и мне нужно получить доступ к объектам ответа, поэтому я использую var objRes = JSON.parse(req.body.transloadit);
разобрать его в объект JSON, и когда я console.log(objRes);
объект не анализируется правильно, я получаю это: (см. все JSON здесь https://gist.github.com/kevinblanco/9631085)
{
a bunch of fields here .....
last_seq: 2,
results: {
thumb: [
[
Object
]
]
}
}
И мне нужны данные из thumb
массив, мой вопрос: почему это делается при разборе?
Вот весь запрос req.body
Объект: https://gist.github.com/kevinblanco/9628156 как вы можете видеть transloadit
Поле представляет собой строку, и мне нужны данные из некоторых их полей.
Заранее спасибо.
1 ответ
В синтаксическом анализе JSON нет ничего плохого - на самом деле проблем нет вообще.
consol.log ограничивает глубину печати, поэтому вы видите [объект] в выводе.
Если вы хотите увидеть полный вывод в файле node.js, просто используйте утилиту inspect, подобную этой;
console.log (util.inspect (yourobject, {глубина: ноль}));
и это напечатает весь контент.
Обратите внимание, что это всего лишь артефакт печати из console.log.