我有一個客戶端應用程序,它與我們在服務器上託管的Web服務進行通信(我們將其稱爲hostServer)。我的客戶端應用程序可以使用basicHttpBinding進行構建和連接。不過,出於安全原因,我試圖暗示wsHttpBinding。WsHttpBinding的客戶端應用程序得到「沒有端點在... ...監聽」
上午在午餐前我可以發誓它正在使用硬編碼證書。從午餐回來,檢查我的代碼,現在它不會運行。我一直在收到「沒有端點在https://hostServer:1234/Service.svc/MyServiceName上傾聽,可能會接受該消息,這通常是由不正確的地址或SOAP操作引起的。」我嘗試重新檢查我的設置,回溯我的步驟,但似乎無法恢復到我正在運行的狀態。
我正在使用服務引用的地址爲「https:// hostServer: 1234/Service.svc?singleWsdl」。我可以毫無問題地導航到「https:// hostServer:1234/Service.svc」並查看Wsdl。
我的客戶端代碼
WSHttpBinding wsBinding = new WSHttpBinding(SecurityMode.Transport);
wsBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate;
Client = new MyServiceName(wsBinding, new EndpointAddress(endpoint));
Client.ClientCredentials.ClientCertificate.SetCertificate(
StoreLocation.CurrentUser,
StoreName.My,
X509FindType.FindBySubjectName,
"localCertName");
Client.ChangePassword("test_user", "pt", "a1");
我的價值端點 = https://hostServer:1234/Service.svc/MyServiceName
我的IIS站點設置了綁定用於HTTP和HTTPS(使用正確的IP &端口ID)
我真的需要在起飛之前讓這段代碼工作(我的妻子將在任何一天與我們的第二個孩子到期)。我一直在努力調試這個爲期兩天的時間,除此之外我還需要現在的時間。請幫忙。