REST: Разлика между версии

Изтрито е съдържание Добавено е съдържание
Lilly12 (беседа | приноси)
Редакция без резюме
Tddhome (беседа | приноси)
RESTful API
Ред 40:
'''HATEOAS (Hypermedia as the Engine of Application State)'''
:[[HATEOAS]] е ограничението, което отличава архитектурата на REST приложението от повечето архитектури на мрежови приложения. При нея клиента „общува“ с приложението изцяло чрез [[Hypermedia|hypermedia]], получена динамично от сървърa.
 
==RESTful API==
RESTful уеб API (също наричано RESTful уеб service) е уеб приложение създадено използвайки принципите на HTTP и REST. То е колекция от ресурси със четири дефинирани аспекти:
* Основният "URL" за уеб приложенията като http://example.com/resources/
* [http://en.wikipedia.org/wiki/Internet_media_type Internet media] типът на данните поддържани от уеб приложенията. Това най - чест е [http://en.wikipedia.org/wiki/JSON JSON], но може да бъде всеки друг валиден интърнет медия тип като се има в предвид, че е валиден хипертекст стандарт.
* Операции поддържани от уеб приложението използвайки [http://en.wikipedia.org/wiki/Request_method HTTP методи] (примерно: GET, PUT, POST, или DELETE).
* Приложенията трябва да се задвижват от хипертекст.
Таблицата показва как HTTP методите обикновено се използват за да се създаде уеб приложение.
 
{| class="wikitable"
|+ RESTful уеб API HTTP методи
! Ресурс !! GET !! PUT !! POST !! DELETE
|-
! Collection URI, като <code><nowiki>http://example.com/resources</nowiki></code>
| '''Подрежда''' URL адресите и някои други детайли на членовете на колекцията.
| '''Заменя''' цялата колекция с друга колекция.
| '''Създава''' нов вход в колекцията. URL адресът на новият вход, е определен автоматично е обикновено се връща от операцията.
| '''Трие''' цялата колекция.
|-
! Element URI, като <code><nowiki>http://example.com/resources/item17</nowiki></code>
| '''Връща''' репрезентация на адресираният член на колекцията, изразена във подходящ Интернет медия тип.
| '''Заменя''' адресираният член на колекцията или ако не съществува,the addressed member of the collection, or if it doesn't exist, '''създай''' го.
|Обикновено не се използва. Treat the addressed member as a collection in its own right and '''create''' a new entry in it.
| '''Трие''' адресираният член на колекцията. Третира адресираният член като собствена колекция и прави нов вход за нея.
|}
Методите PUT и DELETE са [http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Idempotent_methods_and_web_applications idempotent methods]. Методът GET е безопасен метод, което означава, че извикването му не причинява [http://en.wikipedia.org/wiki/Side_effect_(computer_science) странични ефекти].
За разлика от [http://en.wikipedia.org/wiki/SOAP SOAP] - базираните уеб услуги, няма "официален" стандарт за RESTful уеб API. Това е така, защото REST е архитектурен стил за разлика от SOAP, който е протокол. Въпреки, че REST не е стандарт, REST имплементация като Уеб може да използва стандарти като [http://en.wikipedia.org/wiki/HTTP HTTP], [http://en.wikipedia.org/wiki/URI URL], [http://en.wikipedia.org/wiki/XML XML] etc.
 
==Примери за Rest==
Взето от „https://bg.wikipedia.org/wiki/REST“.