Эта статья начинает серию статей о разработке REST API:
- Введение в REST API — веб-службы RESTful
- Различия между REST и SOAP
- Разработка REST API: что такое контракт прежде всего?
- Разработка REST API. Что такое код прежде всего?
- REST API — Что такое HATEOAS?
- Рекомендации по REST API — примеры проектирования веб-сервисов на Java и Spring
Введение в веб-службы RESTful REST означает «Передача репрезентативного состояния» (Википедия: «Передача репрезентативного состояния»).
Это популярный архитектурный подход к созданию API в современном мире.
Ты выучишь:
- Что такое ОТДЫХ?
- На чем основан REST API?
- Как HTTP используется при создании REST API?
- Что такое ресурс?
- Как вы определяете ресурсы REST API?
- Каковы лучшие практики при разработке REST API?
Что такое ОТДЫХ?
REST означает передачу репрезентативного состояния.
Этот термин первоначально придумал Рой Филдинг, который также был одним из создателей протокола HTTP. Самое замечательное в службах REST заключается в том, что они наилучшим образом используют протокол HTTP. Теперь давайте кратко рассмотрим HTTP.
Краткий обзор HTTP
Давайте сначала откроем браузер и посетим веб-страницу:А затем нажмите на одну из страниц результатов:
Далее мы можем нажать на ссылку на странице, на которой мы находимся:
И переходим на другую страницу:
Именно так мы обычно просматриваем веб-страницы.
Когда мы пользуемся Интернетом, за кулисами происходит множество вещей.
Ниже приведено упрощенное представление того, что происходит между браузером и серверами посещаемых вами веб-сайтов:
HTTP-протокол
Когда вы вводите URL-адрес в браузере, например.www.google.com , на сервер отправляется запрос на веб-сайт, определенный URL-адресом.
Затем этот сервер генерирует и выдает ответ. Формат этих запросов и ответов имеет важное значение.
Эти форматы определяются протоколом HTTP — протокол передачи гипертекста .
Когда вы вводите URL-адрес в браузере, он отправляет запрос GET на указанный сервер.
Затем сервер отвечает HTTP-ответом, содержащим данные в формате HTML — язык гипертекстовой разметки .
Затем браузер получает этот HTML-код и отображает его на экране.
Допустим, вы заполняете форму, представленную на веб-странице, со списком элементов.
В этом случае при нажатии кнопки « Представлять на рассмотрение "(Отправить), HTTP-запрос ПОЧТА отправлено на сервер.
Веб-сервисы HTTP и RESTful
HTTP обеспечивает базовый уровень для создания веб-сервисов.Поэтому важно понимать HTTP. Вот несколько ключевых абстракций.
Ресурс
Ресурс — это ключевая абстракция, на которой фокусируется протокол HTTP. Ресурс — это все, что вы хотите показать внешнему миру через свое приложение.Например, если мы пишем приложение для управления задачами, экземпляры ресурсов будут следующими:
- Конкретный пользователь
- Конкретная задача
- Список задач
URI ресурса
При разработке служб RESTful основное внимание следует уделять ресурсам приложения.Мы идентифицируем ресурс, который нужно предоставить, путем присвоения ему URI — универсального идентификатора ресурса.
Например:
- Создайте пользователя: ПОСТ/пользователи
- Удалить пользователя: УДАЛИТЬ /пользователи/1
- Получить всех пользователей: ПОЛУЧИТЬ /пользователи
- Получить одного пользователя: ПОЛУЧИТЬ /пользователи/1
ОТДЫХ и ресурсы
Важно отметить, что при использовании REST вам нужно думать о приложении с точки зрения ресурсов: Определите, какие ресурсы вы хотите открыть внешнему миру Используйте команды, уже определенные протоколом HTTP, для выполнения операций с этими ресурсами.Вот как обычно реализуется служба REST:
- Формат обмена данными : Здесь нет никаких ограничений.
JSON — очень популярный формат, хотя можно использовать и другие, например XML.
- Транспорт : всегда HTTP. REST полностью построен на основе HTTP.
- Определение услуги : Для этого не существует стандарта, а REST является гибким.
В некоторых сценариях это может быть недостатком, поскольку приложению-потребителю может потребоваться понимание форматов запросов и ответов.
Однако широко используются языки определения веб-приложений, такие как WADL (язык определения веб-приложений) и Swagger.
HTTP-компоненты
HTTP определяет следующую структуру запроса:- Строка запроса ( строка запроса ) — определяет тип сообщения
- заголовки запроса ( поля заголовка ) — характеризуют тело сообщения, параметры передачи и другую информацию
- тело сообщения ( тело ) - необязательный
- статус бар ( строка состояния ), включая код состояния и сообщение о причине
- поля заголовка ответа ( поля заголовка )
- дополнительное тело сообщения ( тело )
Методы HTTP-запроса
Метод, используемый в HTTP-запросе, определяет, какое действие вы хотите выполнить с этим запросом.Важные примеры:
- ПОЛУЧАТЬ : получить подробную информацию о ресурсе
- ПОЧТА : создать новый ресурс
- ПОМЕЩАТЬ : обновить существующий ресурс
- УДАЛИТЬ : Удалить ресурс
Код состояния ответа HTTP
Код состояния всегда присутствует в ответе HTTP. Типичные примеры:- 200 – успех
- 404 Страница не найдена
Краткое содержание
В этой статье представлен общий обзор архитектурного стиля REST. Это подчеркивает тот факт, что HTTP является основным строительным блоком служб REST. HTTP — это протокол, который используется для определения структуры запросов и ответов браузера.Мы видели, что HTTP имеет дело в первую очередь с ресурсами, доступными на веб-серверах.
Ресурсы идентифицируются по URI, а операции с этими ресурсами выполняются с использованием команд, определенных протоколом HTTP. Наконец, мы рассмотрели, как службы REST наилучшим образом используют возможности HTTP для предоставления ресурсов внешнему миру.
REST не накладывает никаких ограничений на форматы представления ресурсов или на определение службы.
Дальнейшее чтение
Основы RESTful архитектуры Разработка REST API Теги: #api #rest #restful #веб-сервисы-
Бессмысленная Эволюция Спама
19 Oct, 24 -
Видеообзор Ноутбука Lenovo Ideapad Yoga
19 Oct, 24 -
Программирование Против Шаблонов
19 Oct, 24 -
Периодическая Таблица Методов Визуализации
19 Oct, 24 -
История Перехода На Лицензионное По
19 Oct, 24