Темы для обсуждения:

Как последовательно получать несколько асинхронных данных с помощью async/await (т.е. один за другим)

Как получить несколько асинхронных данных параллельно (т. е. все API запускаются в одном экземпляре)

Как обрабатывать отказы обещаний с помощью async/await.

перед изложением вышеприведенных концепций давайте сначала разберемся, как асинхронность работает с функцией.

Функция, состоящая из ключевого слова «async», возвращает обещание. Позже обещание может быть разрешено с помощью ‘.then’.

Чтобы отклонить, мы используем ключевое слово «throw». Следовательно, мы наблюдаем, что статус обещания, возвращаемый при вызове функции, «отклонен».

Как обрабатывать отказы обещаний с помощью async/await.

Как только обещание отклонено, их следует обработать. Отказы обрабатываются с помощью «попробуй и поймай». Добавьте асинхронную логику в блок try и логику для обработки и отображения соответствующей ошибки в блоке catch.

Как последовательно получать несколько асинхронных данных с помощью async/await (т.е. один за другим)

Если мы хотим получить список видов из звездных войн API: https://swapi.co/api/people/1», а затем из ответа сделать вызов API для получения средней продолжительности жизни первого вида, которую мы должны сделать последовательные вызовы, как показано ниже (с использованием асинхронного ожидания).

Ниже представлена ​​картинка, изображающая водопад сетевых вызовов.

Как получить несколько асинхронных данных параллельно (т. е. все API запускаются в одном экземпляре)

В некоторых сценариях серии API, которые нужно получить, не зависят друг от друга. Мы можем запускать асинхронные вызовы в том же экземпляре. то есть параллельно.

Чтобы сделать несколько вызовов API параллельно с помощью асинхронного ожидания, извлеките данные по отдельности, а затем используйте «ожидание», как показано ниже:

Используя описанное выше поведение, вызовы API запускаются параллельно. Ниже приведена схема вызова сетевого API, которая это подтверждает.

Есть и другой способ, с помощью которого вызовы API асинхронной выборки могут запускаться параллельно. то есть с помощью Promise.all()

Ниже приведена диаграмма водопада сети для получения нескольких API, таких как люди/1, люди/2 и люди/3, в одном экземпляре.

Пожалуйста, похлопайте, если предоставленная информация была полезной. Спасибо.