rest
DESCRIPTION
REST. Hazırlayan:Dilber ÇETİNTAŞ. 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. - PowerPoint PPT PresentationTRANSCRIPT
REST
Hazırlayan:Dilber ÇETİNTAŞ
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-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
j2se 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>