WebサービスのWSDLファイルを取得したいのですが、私が持っているのはそのURL(webservice.example / fooなど)だけです。
URLを直接使用すると、エラー応答のみが配信されます。
回答:
URLを後置することによって ?WSDL
URLが次の場合:
http://webservice.example:1234/foo
あなたが使う:
http://webservice.example:1234/foo?WSDL
そして、wsdlが配信されます。
WSDL
(Web Service Description Language
)を取得します。SOAPWebサービスから可能です。
http://www.w3schools.com/xml/tempconvert.asmx
WSDLを取得するには、次のように追加するだけ?WSDL
です。
WebサービスがWSDLを配信するように構成されている場合にのみ、WSDLを取得できます。そのため、serviceBehaviorを指定し、httpGetEnabledを有効にする必要があります。
<serviceBehaviors>
<behavior name="BindingBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
Webサービスにhttps経由でのみアクセスできる場合は、httpGetEnabledではなくhttpのGetEnabledを有効にする必要があります。