Nedir WSDL ? SOAP ile nasıl bir ilişkisi var ? REST bunların hepsine nerede uyar?
Nedir WSDL ? SOAP ile nasıl bir ilişkisi var ? REST bunların hepsine nerede uyar?
Yanıtlar:
WSDL, bir web hizmetini tanımlayan bir XML belgesidir. Aslında Web Hizmetleri Açıklama Dili anlamına gelir.
SOAP, uygulamalar arasında belirli bir protokol (örneğin, HTTP veya SMTP olabilir) üzerinden bilgi alışverişi yapmanızı sağlayan XML tabanlı bir protokoldür. Basit Nesne Erişim Protokolü anlamına gelir ve bilgileri iletmek için mesajlaşma biçimi için XML kullanır.
REST, ağ bağlantılı sistemlerin mimari tarzıdır ve Temsili Devlet Transferi anlamına gelir. Bu bir standardın kendisi değildir, ancak HTTP, URL, XML vb.Gibi standartları kullanır.
"A WSDL is an XML document that describes a web service. It actually stands for Web Services Definition Language."
Bu gerçekten ne olduğunu açıklamıyor ...
The current version of WSDL is WSDL 2.0. The meaning of the acronym has changed from version 1.1 where the "D" stood for "Definition".
Örnek: Basit bir ifadeyle web hesap makineniz varsa.
WSDL: WSDL, istemciye uygulayabileceğiniz veya maruz bırakabileceğiniz işlevleri anlatır. Örneğin: toplama, silme, çıkarma vb.
SOAP: SOAP'ı kullanırken aslında doDelete (), doSubtract (), doAdd () gibi eylemleri gerçekleştirirsiniz. SOAP ve WSDL elma ve portakal. Onları karşılaştırmamalıyız. Her ikisinin de farklı işlevleri var.
Neden SOAP ve WSDL kullanıyoruz: Platformdan bağımsız veri alışverişi için.
DÜZENLEME: Normal bir günlük yaşam örneğinde:
WSDL: Bir restorana gittiğimizde Menü Öğelerini görüyoruz, bunlar WSDL'ler.
Proxy Sınıfları: Şimdi Menü Öğelerini gördükten sonra zihnimizi oluşturuyoruz (ne sipariş edeceğimize dair zihnimizi işliyoruz): Temel olarak WSDL Belgesine dayalı Proxy sınıfları yapıyoruz.
SABUN: O zaman yiyecekleri aslında Menülere göre sipariş ettiğimizde: Yani, SABUN kullanılarak yapılan servis yöntemlerini çağırmak için proxy sınıflarını kullanıyoruz. :)
Birisi her SOAP / WSDL'den bahsettiğinde, xml'de tanımlanan nesneleri ve sınıfları düşünüyorum ...
"SOAP'ı herhangi bir PHP sınıfındaki gibi kullanırsınız. Ancak, bu durumda sınıf yerel uygulamalar dosya sisteminde değil, http üzerinden erişilen uzak bir sitede bulunur." ... "Bir SOAP hizmetini başka bir PHP sınıfı olarak kullanmayı düşünürsek, WSDL belgesi tüm sınıf yöntemleri ve özelliklerinin bir listesidir."
..ve birisi REST hakkında her konuştuğunda POST, GET ve DELETE gibi HTTP komutlarını (istek yöntemleri) düşünüyorum
SOAP -> SOAP (Basit nesne erişim protokolü), makine-makine etkileşimi için oluşturulan uygulama seviyesi protokolüdür. Protokol standart kuralları tanımlar. Belirli protokolü kullanan tüm taraflar protokol kurallarına uymalıdır. TCP gibi, Taşıma katmanında gevşer, SOAP protokolü Uygulama katmanı (SOAP - Axis2, .Net'i destekleyen herhangi bir uygulama) tarafından anlaşılacaktır.
WSDL -> SOAP mesajı SoapEnevelope-> SoapHeader ve SoapBody'den oluşur. Mesaj formatının ne olacağını tanımlamıyor mu? desteklediği tüm taşıma işlemleri (HTTP, JMS) nelerdir? Bu bilgi olmadan, belirli web hizmetini tüketmek isteyen herhangi bir istemci için SOAP mesajını oluşturmak zordur. Olsalar bile, emin olmayacaklar, her zaman işe yarayacaklar. WSDL kurtarmadır. WSDL (Web Hizmeti açıklama Dili) SOAP mesajının işlemlerini, mesaj biçimlerini ve aktarım ayrıntılarını tanımlar.
REST -> REST (Temsili durum aktarımı) Aktarım'a dayanır. Eylemleri hedefleyen SOAP'ın aksine, REST kaynaklar hakkında daha fazla endişe duymaktadır. REST kaynakları URL'yi (örnek -http: // {serverAddress} / çalışanları / çalışanNumarası / 12345) kullanarak bulur ve eylemler için aktarım protokolüne (HTTP - GET, POST, PUT, DELETE, ... ile) bağlıdır. kaynaklarda gerçekleştirilecek. REST hizmeti kaynağı URL'ye göre bulur ve eylemi taşıma eylem fiilini temel alarak gerçekleştirir. Daha çok mimari üslup ve konvansiyonlara dayanmaktadır.
Karmaşık bir şeyi "basitçe" anlamayacaksınız.
WSDL, bir web hizmetini tanımlamak için XML tabanlı bir dildir. Servis tarafından kullanılan mesajları, işlemleri ve ağ taşıma bilgilerini açıklar. Bu web hizmetleri genellikle SOAP kullanır, ancak diğer protokolleri kullanabilir.
WSDL, bir program tarafından okunabilir ve bu nedenle, web hizmetini çağırmak için gerekli olan istemci kodunun tümünü veya bir kısmını oluşturmak için kullanılabilir. SOAP tabanlı web servislerine "kendini tanımlayan" demenin anlamı budur.
REST, WSDL ile hiç ilgili değildir.
SOAP, Basit (sic) Nesne Erişim Protokolü anlamına gelir. HTTP üzerinden XML göndererek uzak nesnelere Uzak Yordam Çağrısı yapmanın bir yolu olması amaçlanmıştır.
WSDL, Web Hizmeti Açıklama Dilidir. Bir bitiş noktasına '.wsdl' ile biten bir istek, kullanımın bekleyebileceği istek ve yanıtı açıklayan bir XML mesajıyla sonuçlanır. Hizmet ve müşteri arasındaki sözleşmeyi deşifre eder.
REST, hizmetlere mesaj göndermek için HTTP kullanır.
SABUN bir spec, REST bir stil.
Wikipedia "Web Hizmetleri Açıklama Dili, Web hizmetlerini tanımlamak için bir model sağlayan XML tabanlı bir dildir" diyor. Başka bir deyişle, javadoc bir java kütüphanesine olduğu gibi WSDL bir web hizmetine.
WSDL hakkında gerçekten tatlı olan şey, yazılımın WSDL kullanarak bir istemci ve sunucu oluşturabilmesidir.
REST, kodlama açısından hafiftir, hafif cihazlar için (örn. Katı olmayan API'ler) çok daha kullanışlıdır.
REST formattan bağımsızdır. XML, HTML, JSON tüm seçenekler mevcuttur.
REST, WSDL / SOAP etkileşiminin çok noktalı ileti etkileşimi olduğu 2 noktalı ileti aktarımı için yetenekler sağlar (REST, Yeniden Konumlandırma Durumu Aktarımı anlamına geldiğinden şaşırtıcı değildir).
REST, XML iletileri için yeni bir uzantı gerektirmez; burada WSDL / SOAP'de durum böyledir.
WSDL / SOAP çoklu taşıma protokolleri kullanır, REST yalnızca HTTP'ye dayanır. Bu nedenle WSDL / SOAP RESTful gibi kullanılabilir, ancak basit istekler aşırı karmaşık / ağır ağırlıklı olabilir.
Basit bir benzetme: REST, bir motoboyun yemeğinizi kolay ve hızlı bir şekilde sunması gibidir. XML, WSDL / SOAP'ı daha çok UPS teslimatı, daha yapılandırılmış ve ciddi şeyler gibi genişletti, ancak bir maliyeti var.
Bazı açık açıklamalar (SOAP ve WSDL için) burada da bulunabilir.
WSDL belgesi bir web servisini açıklar. Bu ana öğeleri kullanarak hizmetin konumunu ve hizmet yöntemlerini belirtir: her hizmet için web hizmeti veri öğelerinde kullanılan veri türleri gerçekleştirilebilecek işlemleri ve iletilen iletileri tanımlar
SOAP (Basit Nesne Erişim Protokolü), farklı işletim sistemlerinde çalışan programların http ve xml kullanarak iletişim kurmasına izin veren bir mesajlaşma protokolüdür.