REST (Representational State Transfer) — это архитектурный стиль, который используется для разработки сетевых приложений. pro-dgtl.ru Он не является стандартом или протоколом, а скорее набором рекомендаций для построения распределённых систем. pro-dgtl.ru
Система REST работает на основе нескольких принципов, которые обеспечивают простоту, гибкость и масштабируемость веб-сервисов: pro-dgtl.ru
- Клиент-серверная архитектура. practicum.yandex.ru pro-dgtl.ru В системе чётко разделены обязанности между клиентом и сервером. pro-dgtl.ru Клиент отвечает за пользовательский интерфейс, сервер — за обработку данных. pro-dgtl.ru
- Отсутствие состояния. practicum.yandex.ru pro-dgtl.ru Каждый запрос от клиента к серверу должен содержать всю информацию, необходимую для его обработки. pro-dgtl.ru Сервер не хранит информацию о предыдущих запросах, что повышает гибкость системы. pro-dgtl.ru
- Кешируемость. practicum.yandex.ru pro-dgtl.ru Ответы от сервера могут быть закешированы, если это указано, что позволяет уменьшить нагрузку на сервер и ускорить время отклика. pro-dgtl.ru
- Единообразие интерфейсов. practicum.yandex.ru pro-dgtl.ru Использование стандартизированных методов HTTP (GET, POST, PUT, DELETE) и соглашений о структуре URL позволяет легко взаимодействовать с системой и изменять её компоненты. pro-dgtl.ru
- Система уровней. practicum.yandex.ru Архитектура может быть разделена на несколько слоёв, каждый из которых выполняет свою задачу, например, безопасность, балансировка нагрузки или обработка кеша. pro-dgtl.ru
- Код по требованию (опционально). practicum.yandex.ru pro-dgtl.ru Сервер может отправлять клиенту код, который тот должен выполнить для дополнительной обработки, но этот принцип используется не так часто. pro-dgtl.ru
REST использует стандартные HTTP-методы для выполнения операций с ресурсами. pro-dgtl.ru Каждый ресурс представляет собой уникальный объект (например, запись в базе данных или файл), и на него можно воздействовать с помощью различных HTTP-запросов. pro-dgtl.ru
Некоторые основные HTTP-методы в REST:
- GET — запрос на получение данных с сервера. pro-dgtl.ru Обычно используется для получения информации о ресурсе без изменения его состояния. pro-dgtl.ru
- POST — запрос на создание нового ресурса. pro-dgtl.ru Используется для отправки данных на сервер. pro-dgtl.ru
- PUT — запрос на обновление существующего ресурса. pro-dgtl.ru Заменяет текущие данные на сервере. pro-dgtl.ru
- DELETE — запрос на удаление ресурса с сервера. pro-dgtl.ru