2010-06-22 84 views
1

我使用Azure上承載的第三方安全WCF服務。我正在嘗試創建自己的安全HTTPS服務,但我無法使用它。我能當我在我得到了以下錯誤Azure上託管的HTTPS WCF的配置問題

「沒有終點的https://xxxx.cloudapp.net/AsycServ/ AsycServCallback .SVC,聽可以接受的消息。這通常是由不正確的地址造成了客戶端應用程序使用它來承載它在Azure然而或SOAP動作「

我比較了第三方服務的WSDL文件和我託管的WSDL文件。我發現以下區別

WSDL:第三方服務的服務部分

- <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> 

我發現了兩個不同

  1. 地址位置的第三方服務不包含端口名稱,而我的服務指向端口81,但是t託管在HTTPS上。所以我期待https:地址。

  2. 我的WSDL顯示= localhost,而對於第三方服務則顯示= xxx.yyy.com。

我是否缺少配置文件中的任何內容?

回答

0

不知道我明白你要完成什麼。你應該能夠在Azure上部署一個簡單的WCF服務。您必須確保您在服務定義中設置端口。通常,如果您想要轉到https,最容易將其保留在端口443上。另外,您需要確保將證書部署到您用於https的Azure。

如果您的示例部署在端口81上,則看起來您需要將該端口添加到您的呼叫中。這將是https://xxxx.cloudapp.net:81/AsycServ/AsycServCallback

希望有所幫助。