Axios

В React, для работы с REST API, принято использовать библиотеку Axios.

Как и FetchAPI, она позволяет отправить HTTP запросы и получить результат в виде Promise. Но Axios более удобный в использовании.

Несколько важных отличий:

  • Сериализация параметров и тела запроса
  • Заголовки запроса типа Content-Type выставляются автоматически
  • Можно создать экземпляр HTTP клиента и настроить общие для всех запросов заголовки. Так поступают с заголовком Authorization для авторизации пользователя
  • Успешный HTTP ответ разрешается в объект, где тело ответа уже разобрано и доступно в поле data
  • HTTP ответы со статус кодами 4xx и 5xx переводят результирующий Promise в состояние rejected
  • Механизм interceptors (по типу middleware в Express) позволяет настроить глобальную обработку ошибок тела запроса на сервере и перенаправление для не аутентифицированного (залогиненного) пользователя
  • Есть механизм отмены запроса

💻 Задание#

Реализовать CRUD для задач в приложении TodoList с использованием Axios.