const fetch = require('node-fetch');
let url = 'something.com';
module.exports = function(context) {
let a = fetch(url)
a.then(res => {
if(res.status!=200) throw new Error(res.statusText)
else{
context.done(null, res.body);
}
});
a.catch(err => {
console.log(err)
throw new Error(err)
});
};
У меня есть прочная функция, которая вызывает функцию активности, как указано выше. Я установил автоматическую повторную попытку при сбое для этой функции действия. Чтобы повторить попытку, функция должна получить ошибку.
Итак, в запросе получения я хочу выдать ошибку, когда получаю ответ типа 404 или что-то подобное. Но когда я выхожу из блока catch, я получаю сообщение об ошибке, как показано ниже
UnhandledPromiseRejectionWarning: необработанное отклонение обещания. Эта ошибка возникла либо из-за вызова асинхронной функции без блока catch, либо из-за отклонения обещания, которое не было обработано с помощью .catch ().
функция приостанавливается и останавливает выполнение. Мне нужно вручную остановить и начать выполнение. Как я могу справиться с этим, чтобы функция повторила попытку?