Web Servis Nedir?

Web Servis Nedir?

Web Servisler web üzerinden HTTP protokolü ile hizmet veren program parçalarıdır. Hangi dilde ve/veya platformda geliştirildiklerinin bir önemi olmadığı için farklı sistemler arasında veriwebservices_intro_2x alış verişi yapmamıza olanak sağlar. Örneğin .NET’te yazılmış bir servis ile PHP’de yazılmış bir uygulama bir biri ile iletişim kurabilir.

Web servislerden bahsederken 2 önemli özeliği nede değinmek gerekmektedir:

– interoperability (birlikte çalışabilirlik)
– extensibility ( genişleyebilirlik/geliştirilebilirlik)

ve bu özellikleri gerçekleştirmek için XML/JSON işaretleme dillerinden faydalanılır. Sistemler arası veri transferi bu işaretleme dilleri aracılığı ile hızlı bir şekilde gerçekleştirilebilir.

Web Servis Türleri

Web servisleri 2 ana kategoride değerlendirebiliriz:

  1. RESTfulGünümüz WWW içerisinde yaygın olarak kullanılan basit, esnek ve yetenekli web servis metodlarından birisidir. Geliştirilmesindeki ana nedenlerin başında istemci-sunucu arasında ki veri alışverişini SOAP, RPC gibi karmaşık mimarilerle sağlamak yerine, HTTP protokolü üzerinden hızlı ve kolay bir şekilde sağlamak. Diğer web servis mimarilerine göre programcıya daha esnek davranma şansı tanımaktadır. Programcı geliştireceği servisi kendi belirlediği standartlar üzerinde geliştirmesine olanak sağlar.

    SOAP ile kıyaslanacak olursa en büyük farkı, SOAP gibi bizi proxy kullanmaya, bir WSDL’e zorlamıyor olması söylenebilir.

  2. RPC (Remote Procedure Call)
    • XML-RPC :  İki makine arasında konuşmak için XML’le belirlenmiş bir protokol kullanan veri transfer metodudur.
    • JSON-RPC : İki makine arasında konuşmak için JSON ile belirlenmiş bir protokol kullanan veri transfer metodudur.
    • SOAP : SOAP (Basit Nesne Erişim Protokolü) dağıtık uygulamalarda ve web servislerinin haberleşmesinde kullanılmak üzere tasarlanan, RPC (Remote Procedure Call) modelini kullanan, istemci/sunucu mantığına dayalı bir protokoldür. Daha genel olarak SOAP, web üzerinden fonksiyonları kullanmak için geliştirilmiş bir sistemin XML tabanlı kurallar topluluğudur.