Как вывести данные из POST запроса в Node.js в другую переменную?

Столкнулся с проблемой. На один URL сделал POST запрос через библиотеку request в node.js получил данные внутри самого блока, но не могу вывести эту переменную вне зоны видимости этого блока или определить в отдельную переменную:

const request = require('request')
request.post({url: "MY_URL"}, (err, httpResponse, body) => {
    var bodyData = body;
    console.log(bodyData);
});

console.log(bodyData);

Вывод в консоль:

ReferenceError: bodyData is not defined

Подскажите, как решить. Буду благодарен.


Ответы (1 шт):

Автор решения: MrYogurt

Не понятно, что вы имеете ввиду под "более менее работающий код", но из того что я понял, вы хотите:

    const request = require('request')
    request.post({url: "MY_URL"}, (err, httpResponse, body) => {
      var bodyData = body;
      console.log(bodyData); // здесь консоль лог видит данные

      somethingMethod(bodyData) // внутри функции мы видим глобально объявленную функцию и передаем в нее дату
    });

    console.log(bodyData); // здесь консоль лог данных не видит, так как для него переменная bodyData не определена (читаем про области видимости)

    function somethingMethod(data) { // принимаем дату и выводим ее в консоли
      console.log(data)
    }
→ Ссылка