How to get the wsdl file from a webservice's URL

Wsdl

Wsdl Problem Overview


I want to get the WSDL file for a webservice and the only thing I have is its URL (like webservice.example/foo).

If I use the URL directly only an error response is delivered.

Wsdl Solutions


Solution 1 - Wsdl

By postfixing the URL with ?WSDL

If the URL is for example:

http://webservice.example:1234/foo

You use:

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

And the wsdl will be delivered.

Solution 2 - Wsdl

to get the WSDL (Web Service Description Language) from a Web Service URL.

Is possible from SOAP Web Services:

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

to get the WSDL we have only to add ?WSDL , for example:

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

Solution 3 - Wsdl

Its only possible to get the WSDL if the webservice is configured to deliver it. Therefor you have to specify a serviceBehavior and enable httpGetEnabled:

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

In case the webservice is only accessible via https you have to enable httpsGetEnabled instead of httpGetEnabled.

Solution 4 - Wsdl

To download the wsdl from a url using Developer Command Prompt for Visual Studio, run it in Administrator mode and enter the following command:

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

You can now consume the downloaded wsdl in your project as you see fit.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionAlfergonView Question on Stackoverflow
Solution 1 - WsdlAlfergonView Answer on Stackoverflow
Solution 2 - WsdlJorgesysView Answer on Stackoverflow
Solution 3 - WsdlManuel KochView Answer on Stackoverflow
Solution 4 - WsdlTalha ImamView Answer on Stackoverflow