Web API'sı ile web hizmeti arasında herhangi bir fark var mı ? Yoksa aynı mı?
Web API'sı ile web hizmeti arasında herhangi bir fark var mı ? Yoksa aynı mı?
Yanıtlar:
Bir web hizmeti genellikle istemci saplamalarını otomatik olarak oluşturabileceğiniz bir WSDL sunar . Web Servisleri SOAP protokolünü temel alır . ASP.NET Web API, REST tabanlı arabirimler oluşturmanıza yardımcı olan daha yeni bir Microsoft çerçevesidir . Yanıt JSON veya XML olabilir, ancak Web API'si Web Hizmetlerinden WSDL gibi bir hizmet açıklaması sunmadığından, istemcileri otomatik olarak oluşturmanın bir yolu yoktur. Bu yüzden hangi tekniklerden birini kullanmak istediğinize bağlıdır. Belki de WCF bile ihtiyaçlarınızı daha iyi karşılar, sadece MSDN belgelerine bakın.
Web Hizmetleri ve Web API'leri arasındaki temel fark
İnternet servisi:
1) SOAP tabanlı bir hizmettir ve verileri XML olarak döndürür.
2) Yalnızca HTTP protokolünü destekler.
3) Açık kaynak değildir, ancak XML'i anlayan herhangi bir istemci tarafından kullanılabilir.
5) Ağ üzerinden veri almak ve göndermek için bir SOAP protokolü gerektirir, bu nedenle hafif bir mimari değildir.
Web API'sı:
1) Web API, HTTP tabanlı bir hizmettir ve varsayılan olarak JSON veya XML verilerini döndürür.
2) HTTP protokolünü destekler.
3) Bir uygulama veya IIS içinde barındırılabilir.
4) Açık kaynak kodludur ve JSON veya XML'i anlayan herhangi bir istemci tarafından kullanılabilir.
5) Hafif mimariye sahiptir ve mobil cihazlar gibi sınırlı bant genişliğine sahip cihazlar için iyidir.
Bağlantılı makalenin özetini yapıştırdım:
Özet:
Tüm Web hizmetleri API'lardır, ancak tüm API'lar Web hizmetleri değildir.
Web hizmetleri, bir API'nın gerçekleştireceği tüm işlemleri gerçekleştirmeyebilir.
Bir Web hizmeti yalnızca üç kullanım stili kullanır: iletişim için SOAP, REST ve XML-RPC, API iletişim için herhangi bir stil kullanabilir.
Bir Web hizmetinin çalışması için her zaman bir ağa ihtiyacı varken, API'nin çalışması için bir ağa ihtiyacı yoktur.
Bir API, bir uygulama ile doğrudan arabirim oluşturmayı kolaylaştırırken, bir Web hizmeti ...
Devamını oku: API ve Web Hizmeti Arasındaki Fark | Arasındaki Fark | API ve Web Hizmeti http://www.differencebetween.net/technology/internet/difference-between-api-and-web-service/#ixzz3e3WxplAv
Tam yanıt için yukarıdaki bağlantıya bakın.
İsterseniz bir Web Hizmeti bir Web API'sıdır. Özellikle Web API genellikle RESTful (HTTP tabanlı) web hizmeti ve Web Service genellikle SOAP + WSDL (+ HTTP veya SMTP veya JMS ..) anlamına gelir.
Tipik olarak RESTful web hizmetleri Web Servislerine (WSDL, SOAP) karşıdır, ancak son zamanlarda RESTful + WSDL + SOAP anlamına gelen RESTful Web hizmetleri ('W' ile büyük harf) terimi getirilmiştir.
Üç kavram arasındaki farklar için bu tabloya göz atın: http://www2.mokabyte.it/cms/figureproviderservlet?figureId=IUS-6NS-OBV_7f000001_19624184_5621ef4e--Fig02.jpg
Umarım yardımcı olur!
Web hizmeti kesinlikle Web API ile aynıdır - temeldeki veri biçimi açısından biraz daha kısıtlıdır. Her ikisi de HTTP protokolünü kullanır ve her ikisi de RESTful hizmetleri oluşturmaya izin verir. Ve JSON-RPC gibi diğer protokolleri de unutmayın - belki daha iyi uyuyorlar.
ASP.Net bağlamında bir Web API, temel sınıfı ApiController olan ve Views kullanmayan bir Denetleyicidir . Web Hizmeti, WebService'ten türetilen bir sınıftır ve otomatik WSDL oluşturma özelliğine sahiptir. Varsayılan olarak bir SOAP API'sidir, ancak bir ScriptServiceAttribute ekleyerek JSON'u da kullanabilirsiniz .
API ve Web hizmeti bir iletişim aracı olarak hizmet eder.
Tek fark, bir Web hizmetinin bir ağ üzerinden iki makine arasındaki etkileşimi kolaylaştırmasıdır. Bir API, birbirleriyle iletişim kurabilmeleri için iki farklı uygulama arasında bir arayüz görevi görür . API, üçüncü taraf satıcıların diğer programlarla kolayca arabirim oluşturan programlar yazabildikleri bir yöntemdir. Web hizmeti, genellikle Web Hizmeti Açıklama Dili'nde (WSDL) belirtilen, makine tarafından işlenebilir biçimde tasvir edilen bir arabirime sahip olacak şekilde tasarlanmıştır.
Tüm Web hizmetleri API'lardır, ancak tüm API'lar Web hizmetleri değildir.
Web hizmeti yalnızca HTTP'ye sarılmış bir API'dir.
Bu burada makale web hizmeti ve API ile ilgili iyi bir bilgi sağlar.
TMK, Microsoft dünyasında doğru olabilir, ancak Java / Python / vb. Dahil olmak üzere tüm yazılımların dünyasında, hiçbir fark olmadığını düşünüyorum. Aynı şey.
/software/38691/difference-between-web-api-and-web-service
Web Servisleri - bu standart W3C tarafından tanımlanır, bu nedenle yarı otomatik veya otomatik olarak erişilebilir (WSDL / UDDI). Her şey XML tabanlıdır, böylece herkes bunu çağırabilir. Ve hizmetin her yönü çok iyi tanımlanmış. Parametreler açıklama standardı, parametre geçiş standardı, yanıt standardı, keşif standardı vb. Vardır. Muhtemelen standardı tanımlayan 2000 sayfalık bir kitap yazabilirsiniz. Kimlik doğrulama gibi "standart" şeyler yapmak için bazı "ek" standartlar bile vardır.
Müşteriler oldukça fakir olduğu için otomatik çağırma ve keşif neredeyse hiç çalışmıyor olsa da, herhangi bir istemciden herhangi bir hizmetin çağrılabileceğine dair gerçek bir garantiniz yoktur.
Web API genellikle HTTP / REST olarak yapılır, hiçbir şey tanımlanmaz, örneğin çıktı alınabilir. JSON / XML, girdi XML / JSON / veya düz veri olabilir. Hiçbir şey için standart yok => otomatik arama ve keşif yok. Metin dosyasında veya PDF'de bazı açıklamalar sağlayabilir, verileri unicode yerine Windows-1250'de döndürebilirsiniz.
Web, Web API / REST'e geçiyor. Web Hizmetleri gerçekten Web API'sinden daha iyi değildir. Geliştirilmesi çok karmaşık ve çok daha fazla kaynak yiyorlar (bant genişliği ve RAM) ... ve tüm veri dönüşümleri nedeniyle (REQUEST-> XML-> DATA-> RESPONSE-> XML-> VALIDATION-> CONVERSION-> DATA) yavaş.
Örneğin. WebAPI'de verileri paketleyebilir, sıkıştırılmış olarak gönderebilir ve istemcide sıkıştırmayı kaldırabilirsiniz. SOAP'ta yalnızca HTML isteğini sıkıştırabilirsiniz.
Tüm WebServices API'dir, ancak tüm API WebServices değildir, Web'de gösterilen API'ya web hizmetleri denir.
İki şeyi anlamak çok basit,
Not: Tüm Web Servisleri API'dir, ancak tüm API'ler web servisleridir