Junior
Кои API могат да се нарекат RESTful?
sobes.tech AI
Отговор от AI
RESTful API спазват принципите на архитектурния стил REST:
- Клиент-сървър: Разделяне на отговорностите между клиента, който иска ресурси, и сървъра, който ги предоставя.
- Без състояние (Stateless): Всяка заявка от клиента към сървъра трябва да съдържа цялата необходима информация за обработка. Сървърът не запазва състоянието на сесията на клиента.
- Кешируемо: Сървърът трябва ясно или косвено да указва дали отговорите могат да бъдат кеширани от клиента или междинните системи.
- Система на слоеве: Клиентът не може да различи между директно извикване към сървъра и извикване чрез междинни слоеве (прокси, балансери и т.н.).
- Код по заявка (по избор): Сървърът може временно да разшири функционалността на клиента, като предава изпълним код (например JavaScript).
- Общ интерфейс: Най-важният принцип на RESTful API. Състои се от четири ограничения:
- Идентификация на ресурси: Ресурсите се идентифицират чрез URL.
- Манипулиране на ресурси чрез представяния: Клиентът взаимодейства с ресурсите, получавайки техните представяния (например, във формат JSON, XML).
- Самоописващи се съобщения: Всяко съобщение съдържа достатъчно информация за обработка, включително метаданни за това как да се обработи съобщението и ресурсът.
- HATEOAS (Hypermedia as the Engine of Application State): Сървърът трябва да съдържа хипервръзки в отговорите си, които позволяват на клиента да открие наличните действия и да преминава между състоянията на приложението. Това е най-рядко изпълняваният принцип.
RESTful API използват стандартните HTTP методи (GET, POST, PUT, DELETE, PATCH) за операции върху ресурси, идентифицирани чрез URI.
Например, GET заявка към /api/users/123 получава представяне на потребителя с ID 123.