Web API ve Web Hizmeti arasındaki fark?


Yanıtlar:


86

Web Servisleri - W3C tarafından standart olarak tanımlanmış, böylece yarı otomatik veya otomatik olarak erişilebiliyor (WSDL / UDDI). Her şey XML'e dayanıyor, böylece herkes arayabilir. Ve hizmetin her yönü çok iyi tanımlanmıştır. Parametre açıklama standardı, parametre geçiş standardı, yanıt standardı, keşif standardı, vb. Var. Muhtemelen standardı tanımlayan 2000 sayfa kitap yazabilirsiniz. Kimlik doğrulama gibi "standart" işler yapmak için bazı "ek" standartlar bile vardır.

Müşterilerin fakir olması nedeniyle otomatik arama ve bulma işlemlerinin zor bir şekilde yapılmasına rağmen, herhangi bir hizmetin herhangi bir müşteriden aranabileceği konusunda gerçek bir garantiniz yoktur.

Web API tipik olarak HTTP / REST olarak yapılır, hiçbir şey tanımlanmaz, çıktı örneğin olabilir. JSON / XML, giriş XML / JSON / veya düz veri olabilir. Hiçbir şey için standart yoktur => otomatik arama ve keşif. Metin dosyasında veya PDF'de bazı açıklamalar sağlayabilir, verileri unicode yerine Windows-1250'ye geri döndürebilirsiniz. Standardı tanımlamak için, basit bir bilgi içeren 2 sayfalık broşür olurdu ve her şeyi tanımlayacaksınız.

Web, Web API / REST'e geçiş yapıyor. Web Servisleri gerçekten Web API'sinden daha iyi değildir. Gelişmesi çok karmaşık ve çok daha fazla kaynak tüketiyorlar (bant genişliği ve RAM) ... ve tüm veri dönüşümleri nedeniyle (İSTEK>> XML-> VERİ-> SORUMLULUK -> XML-> DEĞERLENDİRME-> DÖNÜŞTÜRME-> VERİ) yavaş.

Örneğin. WebAPI'de, verileri toplayabilir, sıkıştırılmış ve göndericiyi açıp istemcide paketini açabilirsiniz. SOAP'ta yalnızca HTML isteğini sıkıştırabilirsiniz.


1
teşekkürler @Slawek, sen daha iyi anlattım ... ve örnek için de teşekkürler ...
Harish Kurup

2
Gerçekte insanların hem SOAP hem de REST’i “web servisleri” olarak adlandırdıklarını duyuyorum. Web API olsa REST olma eğilimindedir.
Ben Thurley

@Slawek, sizin söylediğiniz şekilde, 2000 sayfadan birkaç sayfaya kadar, kendisinin azaltılmış karmaşıklığı anlatıyor. Basitçe söylemenin iyi bir yolu ..
Jaqen H'ghar

20

Bir web servisi, HTTP üzerinden makinenin makineyle iletişimini sağlar. Bir web API, REST sözleşmelerini kullanan bir web hizmetleri alt kümesidir ( Wikipedia makalesini özetler ). Kavramlar kesinlikle örtüşüyor. Birçok insanın web hizmeti kafasında hala bir bağlantı olduğuna inanıyorum -> SOAP / XML-RPC, gereksiz yere karıştırabilir.

Sonunda, insanların ne anlama geldiğini netleştirmek için birkaç soru sormanız gerekecek. Herkes bir ayrım yapmaz veya terimleri birbirinin yerine kullanmaz.


Teşekkürler @Berin Loritsch, evet bu doğru API ve WS arasında karışıklığa neden olur ..
Harish Kurup

6

Web servisleri, W3C tarafından belirtildiği gibi tanımlanmış bir mimari ve problem alanına yaklaşımdır .

Web servisleri, farklı yazılım uygulamaları arasında, çeşitli platformlarda ve / veya çerçevelerde çalışan standart bir çalışma yöntemi sunar.

Web API bir kavramdır ve kavramın nasıl uygulandığına dair araçları özetler.

Layman'ın ifadesiyle ... web API motor, WS ise BMW N53'tür .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.