Web servis,uygulamaların uzaktaki bir veritabanına erişmesi gerektiğinde gündeme gelen bir konudur.Web servisler, farklı platformların arasındaki iletişimi standardize edilmiş bir takım protokellere ve veri formatlarına göre yapabilmeyi sağlayan yazılımlardır.
Web servislerin hangi dil veya teknolojiyle geliştirilmiş olduğu önemsizdir. Zira HTTP, SOAP, JSON gibi evrensel standartları destekleyecek şekilde geliştirilirler. Bu standartları taşıyan her unsur, bu ekosisteme uyum sağlayabilir.
Web servise kısaca örnek vermek gerekirse ,iki farklı dili konuşan insan düşünün bunlar bir birlerinin dilini bilmediği için konuşamaz ve anlaşamazlar. Bunların anlaşması için bir tercümana ve ortak bir dili konuşan insana ihtiyacı vardır. Web servis buradaki tercümana karşılık gelmektedir. İki farklı teknoloji kullanan işlemlerin ortak dilde konuşmasını sağlamaktadır.
Restful & SOAP
Web servis geliştirmek için günümüzde iki farklı metodoloji kullanılıyor. Bunlardan birisi RESTful(Representation State Transfer), diğeri de SOAP(Simple Object Access Protocol) metodolojisidir.RESTful terimi daha çok mimari bir tercihi ifade eder. SOAP ise servis ve istemci arasında taşınan verilerin yani mesajların yapılarını tanımlamaya yönelik bir standardı ifade eder.
SOAP kısaltmasının açılımı “basit nesne erişim protokolü” olmasına rağmen, bu protokolü TCP veya HTTP gibi bir iletişim protokolü olarak anlamamalıyız. SOAP; istemci ve servis arasında taşınan ve terminolojide mesaj şeklinde anılan verilerin yapısını standardize eden bir protokoldür. SOAP protokolü, veri formatı olarak XML’i kullanır.
SOAP mesajı üç başlık altında toplanır.
- Header
- Body
- Faulttur.
Body kısmı; eğer mesaj bir request(talep) mesajı ise çağrılan servis fonksiyonuna ait parametre değerlerini içerir. Şayet mesaj bir response(cevap) mesajı ise bu kez body kısmı fonksiyonun geri dönüş değerinin serialize(nesnelerin çalışma zamanındaki durumlarını bir kaynağa transfer etmek için belirli bir formata dönüştürüp yazma işlemi) edilerek yerleştirildiği kısım olacaktır.
Header kısmı; genellikle kimlik belirleme(authentication) amaçlı verilerin serialize edilerek yerleştirildiği bir kısımdır. Bu kısım opsiyoneldir yani kullanımı zorunlu değildir. Aynı zamanda header kısmı özelleştirilebilirdir.
Fault kısmı; oluşan hatayı içerir. Bu kısım da opsiyoneldir, zorunlu değildir.
0 Yorumlar
Bizimle fikirlerinizi paylaşabilirsiniz.