Bir web hizmeti ve bir API arasındaki fark nedir? Fark, veri aktarmak için kullanılan protokolden daha mı fazla? Teşekkürler.
Bir web hizmeti ve bir API arasındaki fark nedir? Fark, veri aktarmak için kullanılan protokolden daha mı fazla? Teşekkürler.
Yanıtlar:
Bir API (Uygulama Programlama Arayüzü), üçüncü tarafların diğer kodlarla arayüz oluşturan kod yazabilmeleri anlamına gelir. Web Hizmeti, hemen hemen her zaman HTTP üzerinden çalışan bir API türüdür (SOAP gibi bazıları SMTP gibi alternatif aktarımları kullanabilir). Resmi W3C tanımı Web Hizmetleri mutlaka HTTP kullanmayın bahseder, ancak bu hemen hemen her zaman böyledir ve aksi belirtilmediği sürece genellikle kabul edilir.
Özellikle web hizmetlerine örnekler için bkz. SOAP , REST ve XML-RPC . Yerel bir makinede kullanılmak üzere C ile yazılmış başka bir API türü örneği için bkz. Linux Çekirdek API'sı .
Protokol ile ilgili olarak, bir Web hizmeti API'si hemen hemen her zaman HTTP kullanır (bu nedenle Web bölümü) ve kesinlikle bir ağ üzerinden iletişimi içerir. API'lar genel olarak istedikleri iletişim araçlarını kullanabilirler. Örneğin Linux çekirdek API'sı, kullanıcı alanından gelen aramalar için API'sını oluşturan sistem çağrılarını çağırmak için Kesmeler'i kullanır .
Temel olarak, bir web hizmeti iki makine arasındaki iletişim yöntemidir, API ise bir şeye karşı programlamanıza izin veren açık bir katmandır.
Bir API'niz çok iyi olabilir ve bu API ile etkileşime girmenin ana yöntemi bir web servisidir.
Teknik tanımlar (Wikipedia'nın izniyle):
Bir uygulama programlama arayüzü (API), uygulamaların oluşturulmasını desteklemek için kütüphaneler ve / veya işletim sistemi hizmetleri tarafından sağlanan bir dizi rutin, veri yapısı, nesne sınıfı ve / veya protokoldür.
Bir Web hizmeti (ayrıca Web Hizmeti) W3C tarafından "bir ağ üzerinde birlikte çalışabilir makine-makine etkileşimini desteklemek için tasarlanmış bir yazılım sistemi" olarak tanımlanır.
Genel anlamda bir webservice IS HTTP üzerinden bir API. Genellikle JSON veya XML kullanırlar, ancak başka yaklaşımlar da vardır.
API'ler, A bileşeninin B bileşeniyle nasıl iletişim kurduğunu tanımlayan yayınlanmış bir arabirimdir.
Örneğin, Doubleclick, kullanıcıların çevrimiçi reklam kampanyaları hakkında bilgi almak için veritabanı tablolarını sorgulamasına olanak tanıyan yayınlanmış bir Java API'sine sahiptir.
örneğin GetNumberClicks'i arayın (kullanıcı adı)
API'yi uygulamak için Doubleclick .jar dosyasını sınıf yolunuza eklemeniz gerekir. Çağrı yerel.
Web hizmeti, arayüzün bir WSDL aracılığıyla tanımlandığı bir API biçimidir. Bu, HTTP üzerinden bir arayüzün uzaktan çağrılmasını sağlar.
Doubleclick arayüzlerini bir web servisi olarak uygularsa, Tomcat'in içinde çalışan Axis2 gibi bir şey kullanırlardı.
Uzak kullanıcı web hizmetini arayacaktı
örneğin GetNumberClicksWebService'i (kullanıcı adı) arayın
GetNumberClicksWebService hizmeti GetNumberClicks'i yerel olarak çağırır.
API (Uygulama Programlama Arayüzü), tam formun kendisi, uygulamanız için yararlı olan bir tür işlevselliği ortaya çıkaran başka bir Uygulama Arayüzünün yardımı veya desteği ile uygulamanız için programlamanıza izin veren bir Arayüz olduğunu önerir.
Örneğin, döviz kurları ve düzenli güncellemeler ile kendi veritabanına sahip olmayı planlamıyorsanız, web sitenizde güncellenmiş döviz kurlarını göstermek için bazı üçüncü taraf Arayüzüne ihtiyaç duyarsınız. Bu işlevsellik seti, başka biriyle zaten mevcut olduğunda ve bunu başkalarıyla paylaşmak istediklerinde, bu tür etkileşimlerle ilgilenen diğer insanlarla iletişim kurmak için bir uç noktaya sahip olmaları gerekir, böylece web üzerinden web üzerinden dağıtırlar. Hizmetler. Bu son nokta, API'sine karşı programlayabileceğiniz uygulamalarının arayüzünden başka bir şey değildir.
Web hizmetini bir web API'si olarak düşünün. API şimdi böyle genel bir terimdir, bu nedenle bir web hizmeti, işle ilgili, genellikle işle ilgili bir arayüzdür ve çeşitli protokoller üzerinden ağdan ulaşabilirsiniz.
Şuna göz at http://en.wikipedia.org/wiki/Web_service adresini
Bahsedilen bağlantıda Web API, Web hizmetlerinde büyük olasılıkla Web 2.0 ile ilgili bir gelişmedir, SOAP tabanlı hizmetlerin yerini REST tabanlı iletişim alır. REST hizmetlerinin XML, SOAP veya WSDL hizmet-API tanımları gerektirmediğini ve bu durumun geleneksel web hizmetinden çok farklı olduğunu unutmayın.
başka bir örnek: google map api vs google yön api web hizmeti, eski site siteye javascript dosyası sunarken (daha sonra yeni işlevler yapmak için api olarak kullanılabilir), daha sonra veri gönderen bir Rest web hizmetidir ( json veya xml biçiminde) (işlenemez ancak api anlamda kullanılmaz).