Проверяет знание инструментов для выполнения HTTP-запросов из браузера и их особенностей.
Когда браузеру нужно получить данные с сервера или отправить их, используются HTTP-запросы. На фронтенде это делается асинхронно, чтобы не блокировать интерфейс. Существует несколько инструментов, каждый со своими сильными сторонами.
Самый простой способ — использовать глобальный объект fetch, который возвращает Promise. Он поддерживается всеми современными браузерами и не требует установки дополнительных пакетов. Однако для обработки ошибок и преобразования ответа в JSON нужно писать дополнительные проверки.
fetch('/api/users')
.then(response => {
if (!response.ok) throw new Error('Network error');
return response.json();
})
.then(data => console.log(data))
.catch(err => console.error(err));Более старый подход — XMLHttpRequest, но он громоздкий и редко используется напрямую, чаще через обёртки.
Axios — это сторонняя библиотека, которая работает и в браузере, и в Node.js. Она предоставляет удобный API, автоматически преобразует JSON, поддерживает отмену запросов и перехватчики (interceptors) для обработки токенов или логирования. Пример:
axios.get('/api/users')
.then(response => console.log(response.data))
.catch(error => console.error(error));Также есть другие библиотеки, например, ky (лёгкая обёртка над fetch) или superagent, но они менее распространены.
Если проект небольшой и не требует сложной логики запросов, достаточно встроенного fetch. Для крупных приложений с множеством API-вызовов, где нужны перехватчики, таймауты и отмена запросов, удобнее axios. В современных фреймворках, таких как React, часто используют axios вместе с хуками или библиотеками для управления состоянием.
Знание этих инструментов важно для любого фронтенд-разработчика. Fetch — базовый стандарт, axios — популярная надстройка, упрощающая работу. В реальных проектах выбор зависит от требований к функциональности и предпочтений команды.
Уровень
Рейтинг:
4
Сложность:
2
Навыки
JavaScript
React
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию