Читаемость: Маршруты должны быть легко читаемыми и понимаемыми.
Например, вместо использования маршрута `GET /get-all-books`, лучше использовать /books`.
Методы
Методы (или HTTP-методы) – это действия, которые клиенты могут выполнять над ресурсами вашего api. Наиболее распространенные методы это:
GET: Получение ресурса или списка ресурсов.
POST: Создание нового ресурса.
PUT: Обновление существующего ресурса.
DELETE: Удаление ресурса.
При проектировании методов следует учитывать следующие принципы:
Идемпотентность: Методы должны быть идемпотентными, то есть повторное выполнение одного и того же метода не должно иметь побочных эффектов.
Безопасность: Методы должны быть безопасными, то есть не изменять состояние ресурса без явного указания клиента.
Например, метод `GET` должен быть идемпотентным и безопасным, поскольку он только получает ресурс, не изменяя его состояние.
Лучшие практики
Вот некоторые лучшие практики, которые помогут вам создать эффективное и удобное api:
Используйте существительные: Маршруты и методы должны использовать существительные, а не глаголы.
Избегайте использования числовых идентификаторов: Вместо идентификаторов, используйте уникальные имена или коды.
Используйте кэширование: Кэширование может помочь уменьшить нагрузку на сервер и улучшить производительность api.
В заключении, проектирование маршрутов и методов является важным этапом при создании REST-api. Следуя принципам единообразия, краткости, читаемости, идемпотентности безопасности, а также используя лучшие практики, вы можете создать эффективное удобное api, которое будет легко использовать понимать. следующей главе мы рассмотрим вопросы безопасности аутентификации в
2.4. Использование HTTP-статусов и заголовков
Когда мы проектируем REST-api, важно помнить, что HTTP-протокол предоставляет нам широкий спектр инструментов для передачи информации между клиентом и сервером. Одним из наиболее важных аспектов HTTP-протокола являются статусы заголовки, которые позволяют передавать дополнительную информацию о запросе ответе.
HTTP-статусы
HTTP-статусы – это трехзначные коды, которые указывают на результат обработки запроса сервере. Они могут быть разделены пять категорий:
1xx – Информационные: Эти статусы используются для передачи промежуточной информации о запросе. Например, статус 100 "Продолжить" указывает на то, что сервер принял запрос и готов его обработать.