TGViewer
METANIT.COM METANIT.COM @devnull22 · 5.82K subscribers
Post #2626 1.67K
Архитектура REST API
(продолжение предыдущего поста)

1. Обзор

→ REST (Representational State Transfer, передача состояния представления) — это архитектурный стиль проектирования сетевых приложений.
→ Он использует методы HTTP для выполнения операций над ресурсами, которые представлены URL‑адресами.
→ REST API не сохраняют состояние, поддерживают кэширование и ориентированы на ресурсы, а не на действия.

2. Основные принципы

→ Архитектура «клиент-сервер»
Клиент отвечает за пользовательский интерфейс, а сервер управляет данными и логикой.
Такое разделение обеспечивает масштабируемость и независимую разработку.

→ Отсутствие сохранения состояния (statelessness)
Каждый запрос содержит всю необходимую информацию.
Сервер не хранит данные сессии между запросами.
Это упрощает масштабирование и повышает надёжность.

→ Поддержка кэширования
Ответы должны указывать, можно ли их кэшировать.
Правильное кэширование снижает нагрузку на сервер и повышает производительность.

→ Единый интерфейс
REST обеспечивает последовательный и предсказуемый способ доступа к ресурсам.
Следует использовать понятные URI, стандартные HTTP‑методы и единообразные форматы данных.

→ Многоуровневая система
REST допускает многоуровневую архитектуру, включающую прокси‑серверы, межсетевые экраны и балансировщики нагрузки.
Каждый уровень работает независимо и взаимодействует только с ближайшим соседом.

→ Код по требованию (опционально)
Сервер может отправлять клиенту исполняемый код (например, JavaScript), если это необходимо.

3. Основные компоненты

→ Ресурсы
В REST всё является ресурсом — пользователи, публикации, товары и т. д.
Каждый ресурс однозначно идентифицируется с помощью URI.

→ URI (Uniform Resource Identifiers, унифицированные идентификаторы ресурса)
Пример структуры:

GET /users
GET /users/{id}
POST /users
PUT /users/{id}
DELETE /users/{id}

→ Методы HTTP

GET → Получить ресурс
POST → Создать новый ресурс
PUT → Обновить существующий ресурс
DELETE → Удалить ресурс

→ Представление
Ресурсы представляются в форматах, таких как JSON или XML.
Клиенты взаимодействуют с этими представлениями для обмена данными.

4. Преимущества

→ Высокая масштабируемость и производительность
→ Упрощённое взаимодействие между клиентом и сервером
→ Простая интеграция с различными платформами
→ Лучшая поддерживаемость и гибкость
→ Меньший объём данных по сравнению с сложными протоколами, такими как SOAP
Telegram METANIT.COM Архитектура REST API (продолжение в следующем посте)
  • ❤ 3
  • ❤‍🔥 2
  • 👏 1
More from @devnull22
  1. Mar 19, 2026Добавил в руководство по JavaScript главу про работу с датами и временем с помощью Tempora…
  2. Mar 19, 2026Роскомнадзор перестал полностью справляться с блокировками в интернете Роскомнадзор (РКН)…
  3. Mar 18, 2026Минцифры опубликовало законопроект о государственном регулировании ИИ. Закон должен начать…
  4. Mar 18, 2026Microsoft призвала разработчиков создавать ИИ-приложения в Electron на Windows 11 Microsof…
  5. Mar 18, 2026Oracle анонсировала проект Detroit, который будет развиваться в составе OpenJDK и нацелен…
  6. Mar 17, 2026Вышла новая версия платформы Java - JDK 26. JDK 26 — краткосрочная версия с поддержкой Pre…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →