it-swarm-tr.com

Bir web servis uç noktası nedir?

Diyelim ki web hizmetim http://localhost:8080/foo/mywebservice konumunda ve WSDL'm http://localhost:8080/foo/mywebservice?wsdl konumunda.

http://localhost:8080/foo/mywebservice bir son nokta mı, yani, web servisimin URI'siyle aynı mı, yoksa SOAP iletisinin alındığı ve hatalı olduğu yer mi?

Lütfen bana bunun ne olduğunu ve amacının ne olduğunu açıklayabilir misiniz?

295
karakays

Bu, daha kısa ve umarım daha net bir cevaptır ... Evet, son nokta, hizmetinize bir istemci uygulaması tarafından erişilebilen URL'dir. Aynı web servisi, örneğin farklı protokoller kullanarak kullanılabilir kılmak için birden fazla uç noktaya sahip olabilir.

393
lbalazscs

Peter, yorumlardan cevabı güncellendi:

Bu "eski terminoloji" dir, directally WSDL2 "endepoint" definition kullanın (WSDL2 "port" u "endpoint" e çevirdi).


Belki bu belgede bir cevap bulabilirsiniz: http://www.w3.org/TR/wsdl.html

Bir WSDL belgesi hizmetleri ağ uç noktalarının veya bağlantı noktalarının koleksiyonları olarak tanımlar. WSDL'de, uç noktaların ve mesajların soyut tanımı, somut ağ dağıtımlarından veya veri formatı bağlantılarından ayrılır. Bu, soyut tanımların yeniden kullanılmasına izin verir: değiş tokuş edilen verinin soyut tanımları olan mesajlar ve soyut işlem koleksiyonları olan port türleri. Belirli bir liman tipi için somut protokol ve veri formatı spesifikasyonları, tekrar kullanılabilir bir bağ oluşturur. Bir ağ adresini yeniden kullanılabilir bir ciltleme ile ilişkilendirerek bir bağlantı noktası tanımlanır ve bir bağlantı noktası koleksiyonu bir hizmeti tanımlar. Bu nedenle, bir WSDL belgesi ağ servislerinin tanımında aşağıdaki öğeleri kullanır:

  • Tipler - bazı tip sistemlerini (XSD gibi) kullanan veri tipi tanımları için bir konteyner.
  • Mesaj - iletilen verinin soyut, yazılı bir tanımı.
  • İşlem - Servis tarafından desteklenen bir eylemin soyut açıklaması.
  • Port Tipi - bir veya daha fazla bitiş noktası tarafından desteklenen soyut bir işlem seti.
  • Ciltleme - belirli bir port tipi için somut bir protokol ve veri formatı özelliği.
  • Bağlantı noktası - bir bağlantı ve ağ adresinin kombinasyonu olarak tanımlanan tek bir uç nokta.
  • Servis - ilgili uç noktaların toplanması.

http://www.ehow.com/info_12212371_definition-service-endpoint.html

Bitiş noktası, HTML dosyalarının veya etkin sunucu sayfalarının açıklandığı bir bağlantı noktasıdır. Bitiş noktaları, bir Web hizmeti bitiş noktasını ele almak için gereken bilgileri sağlar. Uç nokta, mesaj adresleme özelliklerinin bir grubunu veya ailesini tanımlamak ve uç noktaların kaynağı ve hedefi için referanslar ve tek biçime izin verecek mesajların kimliği gibi uçtan uca mesaj özellikleri vermek için kullanılan bir referans veya özellik sağlar. "bağımsız" mesajların adreslenmesi. Bitiş noktası bir PC, PDA veya satış noktası terminali olabilir.

45
Julien

Bir web hizmeti uç noktası, başka bir program programının programınızla iletişim kurmak için kullanacağı URL'dir. WSDL'yi görmek için web hizmeti bitiş noktası URL'sine ?wsdl ekleyin.

Web servisleri programdan programa etkileşim içindir, web sayfaları ise programdan insana etkileşimi.

Yani: Bitiş noktası: http://www.blah.com/myproject/webservice/webmethod

Bu nedenle, WSDL: http://www.blah.com/myproject/webservice/webmethod?wsdl


Bir WSDL'nin öğelerini daha da genişletmek için bunları kodla karşılaştırmanın her zaman yararlı olacağını düşünüyorum:

Bir WSDL'de 2 bölüm vardır (fiziksel ve soyut).

Fiziksel Bölüm:

Tanımlar - değişkenler - ex: myVar, x, y, etc.

Türleri - veri türleri - örneğin: int, double, String, myObjectType

İşlemler - yöntemler/işlevler - örneğin: myMethod (), myFunction (), vb.

Mesajlar - yöntem/fonksiyon giriş parametreleri ve dönüş tipleri

  • örn .: genel myObjectType myMethod (String myVar)

Porttipler - sınıflar (yani işlemler için bir kapsayıcı) - örn: MyClass {}, vb.

Özet Bölümü:

Ciltleme - bunlar porttiplere bağlanır ve bu web hizmeti ile iletişim kurmak için seçilen protokolü tanımlar. - bir protokol bir iletişim şeklidir (yani metin/SMS, vs. telefonla e-posta vb.).

Servis - bu, başka bir programın web servisinizi bulabileceği adresi listeler (yani endpoint).

30
specialk1st

Üzerinde çalıştığım eski projelerde son nokta göreceli bir özellikti. Buna eklenmiş olabilir veya olmayabilir, ancak her zaman protocol://Host:port/partOfThePath öğesini içerir.

Çağrılan hizmet buna dinamik bir bölüme sahipse, örneğin bir ?param=dynamicValue, o zaman bu bölüm son noktaya eklenir. Ancak birçok kez uç nokta, değiştirilmeden olduğu gibi kullanılabilir.

Anlaşılması gereken şey, bir son noktanın ne olmadığı ve nasıl yardımcı olduğu. Örneğin, bir uç noktada depolanan bilgileri iletmenin alternatif bir yolu, uç noktanın farklı bölümlerini ayrı özelliklerde depolamak olacaktır. Örneğin:

hostForServiceA=someIp
portForServiceA=8080
pathForServiceA=/some/service/path
hostForServiceB=someIp
portForServiceB=8080
pathForServiceB=/some/service/path

Veya birden fazla hizmette aynı Sunucu ve bağlantı noktası varsa:

Host=someIp
port=8080
pathForServiceA=/some/service/path
pathForServiceB=/some/service/path

Bu durumlarda, tam URL’nin kodunuzda olduğu gibi oluşturulması gerekir:

String url = "http://" + Host + ":" + port + pathForServiceA  + "?" + dynamicParam + "=" + dynamicValue;

Sözleşmede bu, bu şekilde bir son nokta olarak saklanabilir.

serviceAEndpoint=http://Host:port/some/service/path?dynamicParam=

Ve evet, çoğu zaman '=' dahil son noktayı depoladık. Bu şöyle kod yol açar:

String url = serviceAEndpoint + dynamicValue;

Umarım biraz ışık tutar.

13
Jose Martinez

Basitçe söylemek gerekirse, bir uç nokta bir iletişim kanalının bir ucudur. Bir API başka bir sistemle etkileşime girdiğinde, bu iletişimin temas noktaları uç nokta olarak kabul edilir. API'ler için, bir uç nokta bir sunucu veya hizmetin URL'sini içerebilir. Her son nokta, API'lerin işlevlerini yerine getirmek için ihtiyaç duydukları kaynaklara erişebildiği konumdur.

API'ler "istekleri" ve "yanıtları" kullanarak çalışır. Bir API bir web uygulamasından veya web sunucusundan bilgi istediğinde, bir yanıt alır. API'lerin istek gönderdiği ve kaynağın yaşadığı yer, bitiş noktası olarak adlandırılır.

Referans: https://smartbear.com/learn/performance-monitoring/api-endpoints/

3
Satya

Bir Bitiş Noktası, genellikle bir yanıtla sonuçlanan göreceli veya mutlak bir URL olarak belirtilir. Bu yanıt genellikle, örneğin bir JSON dizesi üretebilen bir sunucu tarafı işleminin sonucudur. Bu dize daha sonra aramayı son noktaya yapan uygulama tarafından tüketilebilir. Bu nedenle, genel olarak bitiş noktaları, bir işlemi başlatmak ve/veya bir yanıt döndürmek için TCP/IP ağlarında kullanılan önceden tanımlanmış erişim noktalarıdır. Bitiş noktaları, anahtar değer çiftleri olarak, URL'de geçirilen parametreleri içerebilir; birden çok anahtar değer çifti, bir nokta işareti ile ayrılır; bu nedenle, bitiş noktalarının her zaman bir yanıt döndürmesi gerekmez, ancak yalnızca bir işlemin başarısını veya başarısızlığını gösterse bile, her zaman bir yanıt yararlıdır.

1
Martyn Wynn