NodeJS Запрос, как сохранить тело - PullRequest
0 голосов
/ 18 мая 2018

Итак, у меня проблема с запросом и NodeJS, это очень просто, но я не эксперт.

Код:

logged: function () {
var request = require('request');
test = "nothing!";

request('http://localhost:8080/log', function (error, response, body){
console.log('error:', error);
console.log('statusCode:', response && response.statusCode);
console.log('body:', body);
test = body;
});


console.log('test', test);

Выход:

Starting .../
test: nothing!
error: null
statusCode: 200
body: hi

Ответы [ 2 ]

0 голосов
/ 18 мая 2018

ответ был здесь: Как мне вернуть ответ от асинхронного вызова? Запрос - это асинхронный вызов!

Решение не красивое, но оно работает!

setTimeout(function() { console.log('test', test);}, 3000);
0 голосов
/ 18 мая 2018

запрос является асинхронным, поэтому console.log внизу будет выполнен до назначения тестовой переменной в теле.

Таким образом, console.log должен находиться внутри функции ответа на запрос.

Если вы хотите использовать тело позже вне функции ответа, зависит от того, как вы планируете его использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...