Я хочу передать переменную, определенную в запросе-обещании, переменной вне области видимости.Я думал, что могу передать переменную с помощью оператора return внутри функции запроса, но функция запроса всегда возвращает HTTP-ответ (в данном случае в виде вывода HTML).
Мой код:
require('dotenv').config();
const jsdom = require("jsdom");
const { JSDOM } = jsdom;
var request = require('request-promise');
var get = function(arg1, arg2, arg3, arg4) {
request(`https://www.googleapis.com/customsearch/v1?key=${process.env.API_KEY}&cx=${process.env.CX}&q=${arg1}`, async function(err, res, body) {
var obj = JSON.parse(body);
var url = obj.items[0].formattedUrl;
var part = await request(`${url}/staffel-${arg2}/episode-${arg3}`, function(err, res, body) {
const dom = new JSDOM(`${body}`);
var part = dom.window.document.getElementsByClassName(arg4)[0];
return part;
});
console.log(part);
});
};
Кроме того, я хотел бы передать вывод в функцию get, используя операторы return.Есть ли способ сделать это?
Редактировать: С моей точки зрения, это не дубликат этого вопроса .Запрос возвращает значение, но это не то значение, которое я хочу вернуть, как описано выше.