2015-12-27 4 views
0

Я делаю HTTP-запросы GET API, который возвращает данные сотрудников, используя пакет request. API возвращает информацию, такую ​​как first_name, last_name и т. Д.Атрибуты тела доступа запроса узла

Мой вопрос в том, как получить доступ к этим атрибутам из запроса? Сейчас у меня есть следующий код:

request("http://localhost:3000/api/employee", function(err, res, body) { 
    console.log(body); 
}); 

Это печатает тело в виде строки, а не объект, поэтому я не могу сделать что-то вроде:

console.log(body.first_name) //returns 'undefined' 
+0

добавить код целиком! –

+0

Остальная часть моего кода просто требует различных модулей. Я опубликовал наиболее релевантные части моего кода, показывающие, где я пытаюсь распечатать различные атрибуты данных, возвращаемых в теле. –

+2

@Venkatraman OP, безусловно, не должен «добавлять весь код»! Вопросы должны быть [MVCE] (http://stackoverflow.com/help/mcve). Этот вопрос является хорошим примером этого. – worldofjr

ответ

3

Вы должны разобрать эту строку с JSON.parse для того, чтобы стать объектом JS:

apiResponse = JSON.parse(body) 
console.log(apiResponse.first_name) 

MDN reference

1

Попробуйте приведенный ниже фрагмент.

var request = require("request"); 

request({ 
    uri: "http://localhost:3000/api/employee", 
    method: "GET" 
}, function(error, response, body) { 
    console.log(JSON.parse(body)); 
}); 
Смежные вопросы