Angenommen, mein Webdienst befindet sich unter http://localhost:8080/foo/mywebservice
und meine WSDL befindet sich unter http://localhost:8080/foo/mywebservice?wsdl
.
Ist http://localhost:8080/foo/mywebservice
ein Endpunkt derselbe wie der URI meines Webdienstes oder wo die SOAP-Nachrichten empfangen und nicht gemarshallt wurden?
Könnten Sie mir bitte erklären, was es ist und wozu es dient?
web-services
terminology
definition
endpoint
Karakays
quelle
quelle
Aktualisierte Antwort von Peter in Kommentaren:
Vielleicht finden Sie in diesem Dokument eine Antwort: http://www.w3.org/TR/wsdl.html
http://www.ehow.com/info_12212371_definition-service-endpoint.html
quelle
Ein Webdienst-Endpunkt ist die URL, über die ein anderes Programm mit Ihrem Programm kommunizieren würde. Um die WSDL anzuzeigen, fügen Sie
?wsdl
sie der Webdienst-Endpunkt-URL hinzu.Webdienste dienen der Programm-zu-Programm- Interaktion, während Webseiten der Programm-zu-Mensch- Interaktion dienen.
Also: Endpunkt ist:
http://www.blah.com/myproject/webservice/webmethod
Daher lautet WSDL:
http://www.blah.com/myproject/webservice/webmethod?wsdl
Um die Elemente einer WSDL weiter zu erweitern, finde ich es immer hilfreich, sie mit Code zu vergleichen:
Eine WSDL besteht aus 2 Teilen (physisch und abstrakt).
Physischer Teil:
Definitionen - Variablen - Beispiel: myVar, x, y usw.
Typen - Datentypen - Beispiel: int, double, String, myObjectType
Operationen - Methoden / Funktionen - Beispiel: myMethod (), myFunction () usw.
Meldungen - Methoden- / Funktionseingabeparameter und Rückgabetypen
Porttypen - Klassen (dh sie sind ein Container für Operationen) - Beispiel: MyClass {} usw.
Abstrakter Teil:
Bindung - Diese stellen eine Verbindung zu den Porttypen her und definieren das ausgewählte Protokoll für die Kommunikation mit diesem Webdienst. - Ein Protokoll ist eine Form der Kommunikation (also Text / SMS vs. Telefon vs. E-Mail usw.).
Dienst - Hier wird die Adresse aufgelistet, an der ein anderes Programm Ihren Webdienst finden kann (dh Ihren Endpunkt ).
quelle
In früheren Projekten, an denen ich gearbeitet habe, war der Endpunkt eine relative Eigenschaft. Das heißt, es kann angehängt worden sein oder nicht, aber es enthielt immer das
protocol://host:port/partOfThePath
.Wenn der aufgerufene Dienst einen dynamischen Teil enthält, z. B. a
?param=dynamicValue
, wird dieser Teil dem Endpunkt hinzugefügt. Der Endpunkt kann jedoch häufig unverändert verwendet werden, ohne dass er geändert werden muss.Es ist wichtig zu verstehen, was ein Endpunkt nicht ist und wie er hilft. Eine alternative Möglichkeit zum Übergeben der in einem Endpunkt gespeicherten Informationen besteht beispielsweise darin, die verschiedenen Teile des Endpunkts in separaten Eigenschaften zu speichern. Zum Beispiel:
Oder wenn derselbe Host und Port über mehrere Dienste verteilt ist:
In diesen Fällen müsste die vollständige URL in Ihrem Code als solcher erstellt werden:
Im Vertrag kann dies als Endpunkt als solcher gespeichert werden
Und ja, oft haben wir den Endpunkt bis einschließlich '=' gespeichert. Dies führte zu Code wie folgt:
Hoffe das bringt etwas Licht.
quelle
Einfach ausgedrückt ist ein Endpunkt ein Ende eines Kommunikationskanals. Wenn eine API mit einem anderen System interagiert, werden die Berührungspunkte dieser Kommunikation als Endpunkte betrachtet. Bei APIs kann ein Endpunkt eine URL eines Servers oder Dienstes enthalten. Jeder Endpunkt ist der Speicherort, von dem aus APIs auf die Ressourcen zugreifen können, die sie zur Ausführung ihrer Funktion benötigen.
APIs arbeiten mit "Anfragen" und "Antworten". Wenn eine API Informationen von einer Webanwendung oder einem Webserver anfordert, erhält sie eine Antwort. Der Ort, an dem APIs Anforderungen senden und an dem sich die Ressource befindet, wird als Endpunkt bezeichnet.
Referenz: https://smartbear.com/learn/performance-monitoring/api-endpoints/
quelle
Ein Endpunkt wird als relative oder absolute URL angegeben, die normalerweise zu einer Antwort führt. Diese Antwort ist normalerweise das Ergebnis eines serverseitigen Prozesses, der beispielsweise eine JSON-Zeichenfolge erzeugen könnte. Diese Zeichenfolge kann dann von der Anwendung verwendet werden, die den Endpunkt aufgerufen hat. Im Allgemeinen sind Endpunkte vordefinierte Zugriffspunkte, die in TCP / IP-Netzwerken verwendet werden, um einen Prozess zu initiieren und / oder eine Antwort zurückzugeben. Endpunkte können Parameter enthalten, die innerhalb der URL übergeben werden. Als Schlüsselwertpaare werden mehrere Schlüsselwertpaare durch ein kaufmännisches Und getrennt, sodass der Endpunkt beispielsweise einen Aktualisierungs- / Einfügevorgang aufrufen kann. Endpunkte müssen also nicht immer eine Antwort zurückgeben, aber eine Antwort ist immer nützlich, auch wenn sie nur den Erfolg oder Misserfolg einer Operation anzeigt.
quelle
Ein Endpunkt ist eine URL für den Webdienst. Und Endpunkte sind auch eine verteilte API .
Referenz: https://www.ibm.com/support/knowledgecenter/SSSHYH_7.1.0.4/com.ibm.netcoolimpact.doc/dsa/imdsa_web_netcool_impact_soap_endpoint_c.html
quelle