Для запросов на бэкенд можем использовать Ajax, Axios или встроенный JavaScript интерфейс Fetch API.
Подробнее о Fetch
Подобная функциональность ранее достигалась с помощью XMLHttpRequest
. Fetch представляет собой лучшую альтернативу, которая может быть легко использована другими технологиями, такими как Service Workers
. Fetch также обеспечивает единое логическое место для определения других связанных с HTTP понятий, такие как CORS и расширения для HTTP.
Обратите внимание, fetch
спецификация отличается от jQuery.ajax()
в основном в двух пунктах:
fetch()
не перейдёт в состояние "отклонено" из-за ответа HTTP, который считается ошибкой, даже если ответ HTTP 404 или 500. Вместо этого, он будет выполнен нормально (с значением false в статусе ok
) и будет отклонён только при сбое сети или если что-то помешало запросу выполниться.fetch
не будет отправлять или получать cookie файлы с сервера, в результате чего запросы будут осуществляться без проверки подлинности, что приведёт к неаутентифицированным запросам, если сайт полагается на проверку пользовательской сессии.Пример запроса с использованием fetch:
fetch('http://backend_url') .then((response) => { return response.json(); }) .then((data) => { console.log(data); });
Практика