Аксиосы не разрешаются

#node.js #async-await #axios

#node.js #асинхронное ожидание #axios

Вопрос:

Я пытаюсь сделать простой GET запрос, axios который следует за перенаправлением до тех пор, пока сеть не простаивает, но я не могу получить обещание разрешить. Похоже, это работает для большинства URL-адресов, но не для приведенного ниже URL-адреса, в частности — не уверен, есть ли проблема с моим кодом или что-то особенное для этого перенаправления (другие похожие форматы работают нормально, т. Е. С разными mid=XXXX параметрами.

GET Запрос (без заголовков или авторизации) перенаправляется нормально в Postman, но axios ничего не возвращает.

 async function axiosGet() {
    try {
        const response = await axios.get("http://www.awin1.com/awclick.php?mid=4802");
        console.log(response);
        return response;
    } catch (err) {
        console.log(err);
    }
}
 

Запустив это, я получаю только ответ на запрос bash, в котором ничего не зарегистрировано. Присвоение моей axiosGet() функции переменной, а затем регистрация этой переменной только приводит Promise { <pending> } к результату . Просто хочу получить разрешенный объект promise, хорошо идти оттуда.

Комментарии:

1. консоль. журнал не нужен await ….axiosGet вернет новое обещание, если вы получаете от этого метода, который вы должны вызвать следующим образом: await axiosGet

2. Спасибо — удалили await раньше console.log(response) . Но обертывание axiosGet() в другую асинхронную функцию и вызов await axiosGet(); дают тот же результат (ожидающее обещание).

3. console.log(response) распечатать ожидающее обещание?

4. Извините, нет, если я вызываю axiosGet() или вызываю функцию async function myFunction() { await axiosGet(); } (за которой следует вызов функции myFunction(); ), она вообще ничего не делает (просто возвращается к подсказке bash). Если, например. в другой асинхронной функции I let myVar = await axiosGet(); console.log(myVar); результат регистрируется Promise { <pending> } следующим образом .

5. Проблема, по-видимому, связана с axios обработкой 302 (или других?) перенаправлений, и если есть цикл перенаправления, он, похоже, не выдает ошибку. Провели рефакторинг для использования urllib вместо этого, который выдает объект ошибки, с которым я могу работать, но кажется неудовлетворительным ответом.