Hazrlayan Dilber ETNTA REST REST NEDR Bir iletiim
Hazırlayan: Dilber ÇETİNTAŞ REST
REST NEDİR? ? ? � Bir iletişim mimarisidir. � Bir DTD si yoktur. � Roy Fielding 2000 Yılında ortaya atmıştır. � En başarılı Rest Uyarlamalarından biri HTTP protokolüdür
Representational State Transfer ‘ in baş harflerinden oluşmuştur ve durum nakillerini belirtmektedir. Genel olarak işlerimizi insan-makina olarak, yaparız, yani bilgisayarda bir e-posta okuma, gönderme vs. gibi işler. Biz bu işler gibi diğer işlerimizide makina arasında yapma şansımız var mı? ? ? Diye düşündüğümüzde işte tam bu noktada RESTful web servisler devreye giriyor. Mesela bir URL ile bir kaynak belirtip çağırdığımız zaman sistem o kaynaktaki veriyi çıkarıp verecek mi? ?
Yani ben gidip bir metodu tetiklemeyeyim, yada bir belgeyi burdan göndermeyeyim vs. Ama bir takim metodlarla resourceler(kaynaklar) yaratayım. Web uygulamanın icerisinden o kaynaklarada hep URL`lerle yada URI` ler ile erisebileyim.
Peki kullanmam için bana neler lazım ? � 1 - Birtane URL � 2 - Bir tane browser Her uygulama için mutlaka bir URL yaratırız, bunları yarattığımızda, zaten http protocolunun icinde 4 -5 tane komut var(GET, POST, PUT, DELETE vs. ) bunlar vasıtasıyla ben işlemlerimin cok büyük kısmını %80`i yapabilirim.
Avantajlar � Http merkezli olacak, yani başka protocolleri desteklemeyecek cünkü basit olmalı. Contanierden bağımsız olma, (Application server) � Formattan bağımsız olma � WSDL, UDDI, vb. kullanılmaması �
Dezavantajlar � j 2 se 5. 0`dan önceki sürümler desteklenmez.
Örnek � Kitapçım Restful API � Bir Kitapçı Web Uygulaması Restful APIsi � Api url: http: //kitap. cim � Kaynaklar: � http: //kitap. cim/kitaplar
� � � Eylemler: http: //kitap. cim/kitaplar GET Var olan kitap listesini alma http: //kitap. cim/kitaplar/<id> PUT Yeni kitap kaydı http: //kitap. cim/kitaplar/<id> POST Var olan kitabı değiştirme http: //kitap. cim/kitaplar/<id> GET Kitap hakkında bilgi alma http: //kitap. cim/kitaplar/<id> DELETE Kitap silme
Sunum � http: //kitap. cim/kitaplar/<id> ve � http: //kitap. cim/kitaplar/<id>. xml � XML olarak temsil
Örnek istek � PUT http: //kitap. cim/kitaplar � <kitap> � <baslik>The Art of computer programming 1</baslik> � <yazar>Donald E. Knuth</yazar> � </kitap>
- Slides: 12