StudyCode
REST — архитектурный стиль API, где всё крутится вокруг ресурсов (существительные в URL: /posts, /users/7), а действия выражаются HTTP-методами: GET читает, POST создаёт, PUT/PATCH обновляют, DELETE удаляет. Ключевые принципы: stateless — сервер не хранит состояние клиента между запросами, каждый запрос самодостаточен (токен внутри); единый интерфейс — предсказуемые URL и методы; кешируемость — GET-ответы можно кешировать; клиент-серверное разделение. Анти-паттерн — глаголы в URL вроде POST /getUserData или GET /deletePost?id=5: это уже не REST, а RPC поверх HTTP.
// RESTful API для блога
// Ресурс — существительное, действие — метод
GET /api/posts // список постов
GET /api/posts/42 // один пост
POST /api/posts // создать пост
PATCH /api/posts/42 // обновить пост
DELETE /api/posts/42 // удалить пост
// Вложенные ресурсы — через путь
GET /api/posts/42/comments
// ❌ Не REST: глаголы в URL, GET с побочным эффектом
POST /api/createPost
GET /api/deletePost?id=42