Je veux obtenir le fichier WSDL pour un service Web et la seule chose que j'ai est son URL (comme webservice.example / foo).
Si j'utilise directement l'URL, seule une réponse d'erreur est fournie.
Réponses:
En postfixant l'URL avec ?WSDL
Si l'URL est par exemple:
http://webservice.example:1234/foo
Tu utilises:
http://webservice.example:1234/foo?WSDL
Et le wsdl sera livré.
WSDL
( Web Service Description Language
) à partir d'une URL de service Web.Est possible à partir des services Web SOAP:
http://www.w3schools.com/xml/tempconvert.asmx
pour obtenir le WSDL il suffit d'ajouter ?WSDL
, par exemple:
Il n'est possible d'obtenir le WSDL que si le service Web est configuré pour le fournir. Pour cela, vous devez spécifier un serviceBehavior et activer httpGetEnabled:
<serviceBehaviors>
<behavior name="BindingBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
Dans le cas où le service Web n'est accessible que via https, vous devez activer http s GetEnabled au lieu de httpGetEnabled.
Pour télécharger le wsdl à partir d'une URL à l'aide de l' invite de commande du développeur pour Visual Studio , exécutez-le en mode administrateur et entrez la commande suivante:
svcutil /t:metadata http://[your-service-url-here]
Vous pouvez désormais utiliser le fichier wsdl téléchargé dans votre projet comme bon vous semble.