Получить результат запроса nodejs result - PullRequest
0 голосов
/ 13 марта 2019

Я хотел бы иметь возможность сделать мой запрос и получить результат в переменной вне запроса.

request(url, { json: true }, (err, res, body) => {
  if (err) { return console.log(err); }
    console.log(body);
});

Я уже пробовал это с return, но результат остается тем же: undefined Спасибо за вашу помощь

1 Ответ

0 голосов
/ 13 марта 2019

Так как это обратный вызов, вы должны назначить, а не вернуть, например,

let myBody;
request(url, { json: true }, (err, res, body) => {
 if (err) { return console.log(err); }
    console.log(body);
    myBody = body;
});

Для ясности - поскольку это внутри обратного вызова, запрос, скорее всего, закончится при выполнении обратного вызова. Если вы хотите выполнить некоторую обработку, самым простым способом является вызов функций внутри функции обратного вызова, например ::10000

request(url, { json: true }, (err, res, body) => {
 if (err) { return console.log(err); }
    console.log(body);
    res1 = callFunctionOneHere(body);
    res2 = callFunctionTwoHere(body);
    // and so on
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...