REST-api в современных веб-приложениях: практическое руководство - страница 6

Шрифт
Интервал



5xx: серверные ошибки, которые указывают на то, что сервер遇ил проблему при обработке запроса. Например, статус 500 Internal Server Error указывает внутреннюю ошибку.


Использование HTTP-методов и статусов в REST-api


В REST-api HTTP-методы и статусы используются для определения действий, которые могут быть выполнены над ресурсами. Например, если мы хотим создать новый пользователь, можем отправить POST-запрос на сервер с информацией о пользователе. Если запрос выполнен успешно, вернет статус 201 Created, указывающий то, что пользователь создан.


Аналогично, если мы хотим получить информацию о пользователе, можем отправить GET-запрос на сервер. Если запрос выполнен успешно, сервер вернет статус 200 OK и пользователе.


В следующей главе мы рассмотрим, как использовать HTTP-методы и статусы для построения REST-api, они могут быть использованы создания эффективных масштабируемых веб-приложений.


2.3. Маршрутизация и URL-адреса


В предыдущих главах мы рассмотрели основные принципы построения REST-api и узнали, как создавать ресурсы обрабатывать запросы. Теперь пришло время поговорить о том, организовать доступ к нашим ресурсам. Для этого нам понадобится система маршрутизации, которая позволит связать URL-адреса с конкретными обработчиками запросов.


Что такое маршрутизация?


Маршрутизация – это процесс определения того, какой обработчик запроса должен быть вызван при поступлении на определенный URL-адрес. Другими словами, маршрутизация помогает нам определить, что делать с запросом, когда он поступает наш сервер.


В REST-api маршрутизация обычно основана на методе запроса (GET, POST, PUT, DELETE и т.д.) URL-адресе. Например, если мы хотим получить список всех пользователей, можем отправить GET-запрос URL-адрес `/users`. Если создать нового пользователя, POST-запрос тот же URL-адрес.


Как работает маршрутизация?


Маршрутизация обычно работает следующим образом:


1. Клиент отправляет запрос на определенный URL-адрес.


2. Сервер получает запрос и определяет метод запроса (GET, POST, PUT, DELETE т.д.).


3. Сервер проверяет URL-адрес и определяет, какой обработчик запроса должен быть вызван.


4. Обработчик запроса обрабатывает запрос и возвращает ответ клиенту.


Пример маршрутизации


Допустим, у нас есть REST-api для управления пользователями, и мы хотим реализовать следующие маршруты: