WEB SERVİCE

advertisement
WEB SERVİCE
Web Service kavramının ne olduğunu anlatmadan önce, benzer
bir amaca hizmet eden daha köklü bir kavram olan API ‘den bahsetmek gerekir.
API(Application Programming Interface)

API:bir programın işlevselliğini başka programların da kullanabilmesini sağlayan
fonksiyonlara verilen addır.
API ‘ye ÖRNEK




Hepimizin bildiği gibi ICQ programının temel iki fonksiyonu vardır.Mesaj göndermek
ve dosya göndermek.
ICQ yapısı içinde bulunan bir .DLL dosyası bu fonksiyonları içerir.
İşte bu .DLL dosyası bir API’dir.
Bu .DLL dosyası kullanılarak o fonksiyonları çağırarak mesaj ve dosya gönderebiliriz.
API ‘LERİN DEZAVANTAJLARI


API’lere herkesin ulaşabilmesi güvenlik açısından büyük bir dezavantajdır.
Diğer bir dezavantaj ise günümüzde unix,linux,windows ..gibi farklı işletim
sistemleri;.net,java gibi farklı uygulama platformlarının bulunmasından dolayı,her
uygulama için ayrı ayrı API’ler yazılma zorunluluğudur.
WEB SERVİCE NEDİR?



API’nin ne olduğunu öğrendikten sonra web service kavramını açıklayabiliriz.
Web service için internet çağının API’leri diyebiliriz.
Tek cümleyle web service “internet üzerinden kullanılabilen platform bağımsız API”
diye nitelendirilebilir.
AVANTAJLARI






Haberleşecek sistemlerin birbirlerinin gerçeklenmelerinden haberdar olması veya
platformlarının uyumlu olması gerekmez.
Örneğin, Java ile geliştirilmiş ve UNIX sistem üzerinde çalışan bir uygulama ile .NET
ile geliştirilmiş ve Windows işletim sistemi üzerinde çalışan bir uygulama,
birbirlerinin çalışma ortamlarından bağımsız olarak, XML iletişim standartları
aracılığıyla iletişim kurabilir.
Bir uygulamanın fonksiyonlarını, internet üzerinden çok geniş bir kullanıcı kitlesine
açmak mümkündür.
Örneğin;Merkez bankasından döviz kurlarını web sitelerinin, bankaların, ajansların
vs.. alması.
HTTP üzerinden çalıştırıldığı için, sistemleri dışarıya güvenlikten pek fazla ödün
vermeden açmak mümkün olur. Firewall’lar, uygulamalar arasında veri paylaşmak
istediğimizde bize engel olmaz.
API’lerde güvenlik sorunu vardı.Bu Web Service’in API’ye olan üstünlüğüdür.
 Her platform bağımsız teknolojide olduğu gibi, Web Service’ler de ürünü geliştirmek
için gereken süreyi ve emeği azalttığı için maliyetleri düşürür.
SOAP(Simple Object Access Protocol )


Daha önce bahsettiğimiz gibi web service platform bağımsız çalışabiliyor.Peki bu
nasıl oluyor???
w3c standart komitesi tarafından belirlenen SOAP protokolü ile platform bağımsız
çalışabiliyor.
DİĞER STANDARTLAR
SOAP dışında birtakım standartlarda vardır.
 XML:Web servislerinin veriyi sunmak için kullandığı bir standarttır
 WSDL(Web Service Description Language):Bir uygulamanın bir web servisini
kullanması için web servisinin nasıl çağırılacağının, arayüzünün, hangi protokollerin
ve kodlama standartlarının belirtilmesi gerekir.
WSDL web servisini tanımlayan bir XML belgesidir.


DISCO(Dıscovery Protocol) :Bir sunucuda paylaşıma açılmış bütün web servislerinin
organizasyonunu sağlar.
UDDI(Universal Description, Discovery and Integration):Kurum ve web servisleri
bilgilerini saklayan ve yayınlayan sunuculardır.
Bir web servisi istemcisinin bir servis sağlayıcıdan bir servisi çaĞırma
aşamasındaki temel adımlar:






Web servisi istemcisi (SOAP Client) servis kayıt biriminden (UDDI) web servisini
bulur.
İstemci bir SOAP mesajı hazırlar. SOAP mesajı bir XML belgesidir.
İstemci SOAP mesajını web server veya uygulama sunucusunda çalışan SOAP istek
dinleyicisine gönderir. İstek dinleyici gelen isteklere cevap veren sunucu
programlardır. Bu programlar bir JSP, ASP, CGI veya ISAPI programıdır.
SOAP sunucu gelen SOAP mesajını parse eder ve gerekli parametreleri göndererek
istenen nesnenin istenen yöntemini çağırır.
Çağırılan nesnedeki yöntem çalışır ve sonuçları SOAP sunucusuna gönderir. SOAP
sunucusu gelen sonucu SOAP mesajı formatında biçimlendirerek istemciye gönderir.
İstemci gelen SOAP mesajının içindeki bilgileri alarak istekte bulunan programa
gönderir.
Download