So erhalten Sie die WSDL-Datei von der URL eines Webservices


86

Ich möchte die WSDL-Datei für einen Webservice erhalten und das einzige, was ich habe, ist die URL (wie webservice.example / foo).

Wenn ich die URL direkt verwende, wird nur eine Fehlerantwort geliefert.

Antworten:


124

Durch Postfixieren der URL mit ?WSDL

Wenn die URL zum Beispiel lautet:

http://webservice.example:1234/foo

Sie nutzen:

http://webservice.example:1234/foo?WSDL

Und die wsdl wird geliefert.


2
Manchmal auch alle Länderspiele (WSDL)
— Dan

Und wenn Sie die WSDL nicht erhalten, erhalten Sie möglicherweise eine XML mit einem Bindungsschlüssel oder einer Art Validierungscode, mit dem Sie die tatsächliche URL der WSDL erstellen können.
— Uhrmacher

Irgendeine Idee, wie man die importierten xsd-Dateien bekommt?
— Wikingersteve

Das funktioniert nicht. Dies ist meine Webservice-URL: prealert-test.customer-pages.com

1
Das WSDL-Ding ist eine Konvention, auf die normalerweise Frameworks folgen. Wenn es bei Ihnen nicht funktioniert, sollten Sie etwas Spezielles für das von Ihnen verwendete Framework finden.
— Alfergon

25

um die WSDL(Web Service Description Language ) von einer Webdienst-URL abzurufen.

Ist über SOAP Web Services möglich:

http://www.w3schools.com/xml/tempconvert.asmx

Um die WSDL zu erhalten, müssen wir nur hinzufügen ?WSDL, zum Beispiel:

http://www.w3schools.com/xml/tempconvert.asmx? WSDL


1
Wie würden Sie einige Daten mithilfe der URL abrufen?
— Jesse

1
Wenn Sie Daten von SOAP abrufen möchten, sollten Sie dieses Tool soapui.org verwenden. Es ist kostenlos und funktioniert einwandfrei .
— Major

12

Die WSDL kann nur abgerufen werden, wenn der Webservice für die Bereitstellung konfiguriert ist. Dazu müssen Sie ein serviceBehavior angeben und httpGetEnabled aktivieren:

<serviceBehaviors>
    <behavior name="BindingBehavior">
        <serviceMetadata httpGetEnabled="true" />
        <serviceDebug includeExceptionDetailInFaults="true" />
    </behavior>
</serviceBehaviors>

Wenn auf den Webservice nur über https zugegriffen werden kann, müssen Sie http s GetEnabled anstelle von httpGetEnabled aktivieren.


4

Um die WSDL mithilfe der Developer-Eingabeaufforderung für Visual Studio von einer URL herunterzuladen , führen Sie sie im Administratormodus aus und geben Sie den folgenden Befehl ein:

 svcutil /t:metadata http://[your-service-url-here]

Sie können jetzt die heruntergeladene WSDL in Ihrem Projekt nach Belieben verwenden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.