Jak uzyskać plik WSDL z adresu URL usługi internetowej


92

Chcę pobrać plik WSDL dla usługi sieciowej i jedyne, co mam, to jego adres URL (np. Webservice.example / foo).

Jeśli używam adresu URL bezpośrednio, dostarczana jest tylko odpowiedź o błędzie.

Odpowiedzi:


132

Dodając adres URL za pomocą ?WSDL

Jeśli adres URL to na przykład:

http://webservice.example:1234/foo

Używasz:

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

I WSDL zostanie dostarczony.


2
Wszystkie występy czasami również (WSDL)
— Dan

A jeśli nie otrzymasz wsdl, możesz otrzymać xml z kluczem wiążącym lub jakimś rodzajem kodu walidacyjnego, który pomoże ci stworzyć rzeczywisty adres URL wsdl.
— Zegarmistrz

Masz jakiś pomysł, jak pobrać zaimportowane pliki xsd?
— vikingsteve

To nie działa. To jest adres URL mojej usługi internetowej: prealert-test.customer-pages.com

1
Rzecz? WSDL jest konwencją, po której zwykle występują frameworki i tak dalej. Jeśli to nie działa, myślę, że powinieneś znaleźć coś konkretnego dla używanego frameworka.
— Alfergon

26

aby uzyskać WSDL( Web Service Description Language) z adresu URL usługi sieci Web.

Jest to możliwe z SOAP Web Services:

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

aby otrzymać WSDL musimy tylko dodać ?WSDL, na przykład:

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


1
Jak możesz odzyskać niektóre dane, używając adresu URL?
— Jesse

2
Jeśli chcesz pobrać dane z SOAP, powinieneś użyć tego narzędzia soapui.org , jest ono darmowe i działa dobrze.
— Major

13

Uzyskanie WSDL jest możliwe tylko wtedy, gdy usługa sieciowa jest skonfigurowana do jego dostarczania. Dlatego musisz określić serviceBehavior i włączyć httpGetEnabled:

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

W przypadku, gdy usługa internetowa jest dostępna tylko przez https, musisz włączyć http s GetEnabled zamiast httpGetEnabled.


5

Aby pobrać wsdl z adresu URL przy użyciu wiersza polecenia dewelopera dla programu Visual Studio , uruchom go w trybie administratora i wprowadź następujące polecenie:

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

Możesz teraz korzystać z pobranego pliku wsdl w swoim projekcie według własnego uznania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.