petushok55
@petushok55
Обучаюсь на практике.

Await не работает. Promise undefined тоже выходит. ПОчему?

async function getRandomUserAgent(){
    // сначала берём рандомный юзер агент
    request('https://headers.scrapeops.io/v1/user-agents?api_key=my_key&num_results=1', (error, response, body) => {
        if (error) {
            throw new Error(error);
        }
        let _parsed = JSON.parse(body)
        return _parsed.result[0]
    });
}


console.log(await getRandomUserAgent()) // SyntaxError: missing ) after argument list
console.log(getRandomUserAgent()) // Promise { undefined }
  • Вопрос задан
  • 101 просмотр
Решения вопроса 1
petushok55
@petushok55 Автор вопроса
Обучаюсь на практике.
ChatGPT 3 сделал следующую магию и всё работает как надо
async function getRandomUserAgent(){
    return new Promise((resolve, reject) => {
        request('https://headers.scrapeops.io/v1/user-agents?api_key=secret&num_results=1', (error, response, body) => {
            if (error) {
                reject(error);
            }
            let _parsed = JSON.parse(body);
            resolve(_parsed.result[0]);
        });
    });
}

(async function() {
    let result = await getRandomUserAgent();
    console.log(result);
})();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы