Я пытаюсь заставить функцию возвращать правильные значения другой функции, которая обрабатывает возвращенные данные. У меня есть эта функция внутри того же файла, что и тот, из которого я пытаюсь ее вызвать - лямбда-функция - я вызываю ее, используя const response = sendRequest(url)
, URL-адрес которого предоставляется из другой переменной. Я проверил эту переменную, и я определенно установил правильное значение.
Цель состоит в том, чтобы вернуть информацию о запросе обратно в основную функцию. Я хочу обработать там данные и действовать в соответствии с ними.
Фактическая функция запроса должна быть в порядке, поскольку я могу запустить ее точно так, как она есть - за вычетом части разрешения - в файле test.js
.
Проблемы c функция
async function sendRequest (url) {
let code;
return new Promise((resolve, reject) => {
request({ url, timeout: 20000 }, (error, response, body) => {
if (error == 'ENOTFOUND' || error == 'ETIMEDOUT') {
response.statusCode = 500;
}
if (error || (response.statusCode < 200 && response.statusCode > 299) || !response.statusCode) {
if (!response || !response.statusCode) {
code = 500;
} else {
code = response.statusCode;
}
}
console.log(`Elapsed time: ${response.elapsedTime}`)
return resolve({code, error, elapsedTime: response.elapsedTime})
});
});
}
Токовый выход
{error: null}