Technologies

REST

REST (Representational state transfer) — стиль архитектуры ПО для распределенных систем, использующийся для создания веб-сервисов. Это набор способов обработки и передачи состояний ресурсов по самому распространенному протоколу HTTP. А если совсем просто, то REST — формат «общения» между браузерной и серверной частью сайта или веб-приложения.

 

Системы, которые поддерживают эти принципы, называются RESTful, и таких сейчас подавляющее большинство.

Как работает REST и Restful-системы

В REST у каждой единицы информации есть свой глобальный идентификатор URL. Данные передаются как они есть без дополнительных слоев в виде XML. Он используется только для форматирования запросов, как стандарт для HTTP, но может быть заменен на JSON. Все урлы строятся по строго заданному формату, который не связан с форматом самих данных. Они могут вести как к HTML-странице, так и к отдельной картинке, текстовому файлу и т.д. Управление данными, на которые указывает URL, происходит при помощи методов протокола передачи. Для HTTP это классические — GET, PUT, POST и DELETE.

3 признака Restful-системы
01
01
Клиент-серверная архитектура

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

02
02
Протокол без сохранения состояний

Использование stateless-протокола означает, что сервер не будет хранить данные клиентов. Каждый запрос будет независимой транзакцией, со всей необходимой информацией, в том числе и id клиента, в случаях когда это нужно.

03
03
Единый интерфейс

Требования к организации клиент-серверного взаимодействия, включающие в себя описанные вначале особенности стиля REST, и другие принципы, в частности, само-документируемые сообщения, гипермедиа, кеширование и так далее.

4 причины использовать REST для своего проекта
  • Это универсальное решение для любых сайтов и приложений, используемое практически по умолчанию;
  • Проект будет легче масштабировать благодаря независимому внедрению компонентов;
  • REST хорошо работает в системах с ограниченной пропускной способностью соединения;
  • Подходит для создания быстрых и отзывчивых веб-приложений AJAX с частичным обновлением UI, без полной перезагрузки страницы.
Заключение

REST — классический набор методов для организации веб-служб, т.е. связей между компонентами сайта. Это просто способ организации передачи данных между сервером и браузером. Сам по себе он не привязан к технологиям и протоколам, но учитывая, распространенность протокола HTTP и форматов JSON и XML для веб-служб, используется именно с ними.

REST предусматривает использование HTTP так, как это было задумано его создателями, не расширяя и не перегружая. Это набор максимально простых и нетребовательных к ресурсам программных методов добавления, изменения, получения и удаления информации. Конкуренты REST сейчас значительно ему уступают, и этот стиль архитектуры — решение по умолчанию.

Разработка веб сайтов
Разработка веб сайтов

Бизнес знает свои потребности, а мы — как их реализовать.

Создаем и разрабатываем устойчивые корпоративные сайты и резвые промо-лендинги. Разрабатываем web сервисы. Наши продукты выдерживают огромную нагрузку и надёжно служат клиентам.