„8. REST (2012)” változatai közötti eltérés

A VIK Wikiből
Tank (vitalap | szerkesztései)
Nincs szerkesztési összefoglaló
Tank (vitalap | szerkesztései)
17. sor: 17. sor:


==REST alapelvei==
==REST alapelvei==
* Minden eröforráshoz azonosító rendelése
* Minden eröforráshoz azonosító rendelése (URI, URN, URL a jó, mert egyértelmű, könnyű feloldani, független a mögöttes technológiától)
* Dolgok összekapcsolása
* Erőforrások lehetnek: doksik, adatok (szamitas eredmenye), szolgáltatások (SOAP, metaadatok, stb), fogalmak
* Dolgok összekapcsolása (jó URL cimet kell választani)
* CRUD müveletek használata (Create, Read, Update, Delete)
* CRUD müveletek használata (Create, Read, Update, Delete)
* Állapotmentes kommunikáció
* Állapotmentes kommunikáció

A lap 2013. május 26., 18:06-kori változata

Ez az oldal egyelőre csonk. Segíts a szerkesztésében!

Ha nem tudod, hogyan állj neki, olvasd el az útmutatót!


HTTP

  • HTTP GET

  • HTTP POST

REST

REST = Representational State Transfer

RESTful HTTP

  • HTTP protokoll kibövítése: GET, POST, PUT, DELETE
  • Bemenö paraméterek: URL része, URL query string, POST paraméter, HTTP body
  • Visszatérési érték: HTTP body
  • nagyon egyszerü: böngészőből is tesztelhetö

REST alapelvei

  • Minden eröforráshoz azonosító rendelése (URI, URN, URL a jó, mert egyértelmű, könnyű feloldani, független a mögöttes technológiától)
  • Erőforrások lehetnek: doksik, adatok (szamitas eredmenye), szolgáltatások (SOAP, metaadatok, stb), fogalmak
  • Dolgok összekapcsolása (jó URL cimet kell választani)
  • CRUD müveletek használata (Create, Read, Update, Delete)
  • Állapotmentes kommunikáció

Műveletek erőforrásokon

Többféle adatreprezentáció

  • HTML (emberek szamara) vagy XML, JSON, stb. gépek számára
  • változhat a struktúra

Állapotmentes kommunikáció

A REST önmagában állapotmentes

  • De az alkalmazásnak lehet állapota (kliens oldalon, erőforrásban tárolva)
  • Skálázhatósági előnyök emiatt (nincs session, felcserélhető szerverek)

Elosztott technológiák összefoglaló

  REST RMI WS CORBA
Különbözö programnyelvek között müködik igen nem igen igen
Kommunikációs protokoll HTTP RMI SOAP IIOP
Interfészleíró nincs/WADL Java Interface WSDL IDL
Katalógus JNDI UDDI Naming Service -
Elosztott igen igen igen igen
Szakványos igen nem igen igen
Széles körü támogatás igen nem igen igen
Egyszerü igen igen nem nem
Egyszerü API igen igen igen nem
Gyors igen igen nem igen
Biztonság, tranzakciók nem nem igen nem