Сегодня мы поговорим о сетевых запросах. Зачем? Да потому что ты обязательно с ними встретишься. Ну, конечно если ты собираешься стать настоящим фронтом.
AJAX (Asynchronous JavaScript And XML) — это технология, которая позволяет выполнять сетевые запросы асинхронно, а элементы веб-страницы при этом, могут обновляться без перезагрузки всей страницы. В названии присутствует XML по историческим причинам, такой формат данных использовать не обязательно. REST (REpresentational State Transfer, передача состояния представления) API предоставляет удобный способ взаимодействия с бэкендом приложения через набор URL адресов. Набор таких URL выглядит удобочитаемо и не требует вникать в архитектуру серверной части приложения. Итак, AJAX, REST API и формат обмена данными JSON является одной из самых популярных связок для создания динамичных веб-приложений.
Существуют и другие технологии, например gRPC (модернизация старого RPC — технология удалённого вызова процедур), GraphQL (наиболее хорошо пригодный для агрегации данных из множества источников), формат обмена данными XML.
Протокол HTTP и HTTPS
Популярная аббревиатура HTTP (HyperText Transfer Protocol) кроет свою суть непосредственно в названии – это протокол передачи гипертекста. То есть это сетевой протокол, позволяющим передавать нам по сети веб-страницы.
На самом деле сетевая передача данных устроена довольно сложно и HTTP это один из множества сетевых протоколов, расположенный на верхнем уровне сетевой модели OSI.
Для обеспечения безопасности соединения используется протокол HTTPS. В название добавили слово «безопасность» и это означает что мы имеем дело с криптографией, а именно с протоколом TLS (ранее SSL), обеспечивающим шифрование данных, передаваемых по сети.
HTTP- запросы предоставляют доступ к сетевым ресурсам. Для того чтобы как-то разграничить действия в отношении ресурсов на уровне HTTP придуманы различные методы.
Основные виды:
- GET – получение данных;
- POST – создание данных;
- PUT – полное обновление элемента;
- PATCH – частичное обновление элемента;
- DELETE – удаление данных;
Кроме того, в HTTP существует статус код, состоящий из трех десятичных цифр, который указывает на состояние нашего запроса. Например, популярная фраза “404 Not found” является статус-кодом и пояснением к нему, что запрашиваемый ресурс не найден.