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.