Middle+
Какви са принципите на единния интерфейс?
sobes.tech AI
Отговор от AI
Принципи на единния интерфейс (също известни като принципи на проектиране на RESTful API, въпреки че се прилагат и към други разпределени системи):
- Идентификация на ресурсите: Всяка част от информацията, която може да бъде адресирана, трябва да има уникален идентификатор. Клиентът взаимодейства с ресурсите, използвайки тези идентификатори.
- Манипулиране на ресурси чрез представяния: Клиентът получава представяне на ресурса (например във формат JSON или XML) и може да променя състоянието на ресурса, като изпраща промененото представяне обратно към сървъра.
- Самоописващи се съобщения: Всяко съобщение между клиента и сървъра трябва да съдържа достатъчно информация за неговото пълно тълкуване. Клиентът не трябва да разчита на външна информация или състоянието на сесията на сървъра.
- Хипермедия като двигател на състоянието на приложението (HATEOAS - Hypermedia As The Engine Of Application State): Сървърът трябва да предоставя хипервръзки (линкове) в отговорите, които сочат към следващите възможни действия или свързани ресурси. Клиентът се движи из приложението, следвайки тези връзки, а не разчитайки на предварително фиксирани URL адреси или логика.
- Архитектура клиент-сървър: Ясно разделение на отговорностите между клиента (който управлява потребителския интерфейс и инициира заявките) и сървъра (който съхранява данните и обработва заявките). Това разделение подобрява мащабируемостта и преносимостта на клиента.
- Безсъстояние (Stateless): Всяка заявка от клиента към сървъра трябва да съдържа цялата необходима информация, за да бъде разбрана и обработена от сървъра. Сървърът не запазва информация за състоянието на сесията на клиента между заявките. Това увеличава мащабируемостта и устойчивостта към грешки.
Спазването на тези принципи допринася за създаването на мащабируеми, гъвкави и лесни за поддръжка разпределени системи.