тело ответа на запрос http get с использованием модуля запроса

#javascript #node.js #express

#javascript #node.js #выразить

Вопрос:

Я работаю над express js и использую пакет запросов для методов http

 request({
url:'http://custom-url',
method:'GET'},function(err,response,body){

console.log("Got Response : " respnose.statusCode);
console.log("Body : " body);
console.log("name is " body.name);

})


My output is :
Got Response : 200
Body :{"name":"John","id":"139321"}
name is undefined
  

В теле есть параметр name, но я не понимаю, почему body.name не определено, пожалуйста, помогите!

Ответ №1:

Иногда приходит ответ String .

Попробуйте проанализировать его в JSON объекте, а затем использовать его

 request({
  url: 'http://custom-url',
  method: 'GET'
}, function(err, response, body) {

  if (body amp;amp; typeof body == "string") {
    body = JSON.parse(body);
  }

  console.log("Got Response : "   respnose.statusCode);
  console.log("Body : "   body);
  console.log("name is "   body.name);

})