【发布时间】:2010-06-22 13:58:43
【问题描述】:
我使用托管在 Azure 上的第三方安全 WCF 服务。我正在尝试创建自己的安全 HTTPS 服务,但我无法使用它。我可以在 Azure 上托管它,但是当我在客户端应用程序中使用它时出现以下错误
“在https://xxxx.cloudapp.net/AsycServ/AsycServCallback .svc 上没有可以接受消息的端点侦听。这通常是由不正确的地址或 SOAP 操作引起的”
我将第三方服务的 WSDL 文件与我托管的文件进行了比较。我发现了以下差异
wsdl:第三方服务的Service部分
- <wsdl:service name="SubsManagement"><br/>
- <wsdl:port name="WSHttpBinding_IxxxManagement" binding="tns:WSHttpBinding_IxxxManagement"><br/>
<soap12:address location="https://xxx.yyy.com/Syndication/SubscriptionManagement.svc" /> <br/>
- <wsa10:EndpointReference><br/>
<wsa10:Address>https://xxx.yyy.com/Syndication/SubsMgmt.svc</wsa10:Address> <br/>
- <Identity xmlns="http://schemas.xmlsoap.org/ws/2006/02/addressingidentity"><br/>
<Dns>xxx.yyy.com</Dns><strong> <br/>
</strong>
</Identity><br/>
</wsa10:EndpointReference><br/>
</wsdl:port><br/>
</wsdl:service>
wsdl:我的服务的服务部分
- <wsdl:service name="AsycServCallback">
- <wsdl:port name="WSHttpBinding_IxxxCallback" binding="tns:WSHttpBinding_IxxxCallback">
<soap12:address location="http://ippbposstage.cloudapp.net:81/MOSI/MOSICallback.svc" />
- <wsa10:EndpointReference>
<wsa10:Address>http://xxx.cloudapp.net:81/test/AsycServCallback.svc</wsa10:Address>
- <Identity xmlns="http://schemas.xmlsoap.org/ws/2006/02/addressingidentity">
<Dns>localhost</Dns>
</Identity>
</wsa10:EndpointReference>
</wsdl:port>
</wsdl:service>
我发现了两个不同之处
当我的服务指向端口 81 时,第三方服务的地址位置不包含端口名称,但是 t 托管在 HTTPS 上。所以我期待 https : 在地址中。
我的 WSDL 显示 = localhost,而对于第三方服务它是 =xxx.yyy.com。
我是否遗漏了配置文件中的任何内容?
【问题讨论】: