我在 Azure 上有一个通过 SSL 运行的云服务;我可以浏览到该服务并wsdl
通过 SSL 获取它,但是当我这样做时soap address location
返回错误 - 而不是使用绑定到证书的域名,我得到了服务器名称
<soap:address location="http://rd00155d45cc3c/Amazon.svc"/>
我期待看到
<soap:address location="https://azure.mydomain.com/Amazon.svc"/>
我的配置
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="AzureBinding">
<security mode="Transport" />
</binding>
</basicHttpBinding>
</bindings>
<services>
<service name="MyService">
<endpoint address="" binding="basicHttpBinding"
contract="StudentServiceWCF.IAmazon"
bindingConfiguration="AzureBinding" />
<endpoint address="mex" binding="mexHttpsBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
我的 app.config 客户端端点已配置
<endpoint address="https://azure.mydomain.com/Amazon.svc"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IOutOfDateSecure"
contract="AzureService.IAmazon" name="BasicHttpBinding_IAmazon" />
<binding name="BasicHttpBinding_IAmazon">
<security mode="Transport" />
</binding>
我不知道如何影响地址位置,因此它使用我证书中的域名。因为它返回的是 http 位置,所以测试客户端会抛出异常:
位于 http://rd00155d45cc3c/Amazon.svc 的 HTTP 服务不可用