一個以前運行的很正常的項目,某天突然無法連接WCF構建的后台。使用WCFTestClient連接到服務是正常的,但是調用服務中的方式時就報出了以下錯誤:
已嘗試創建到達不支持 .Net 框架的服務的通道。可能遇到 HTTP 終結點
.....
開始以為是程序問題,排查了很久也沒有發現問題,同事用同樣的程序跑起來都很正常。
后來發現是端口被占用了的問題,由於我們的項目中WCF使用TCP模式通訊,然而測試時WCFTestClient是通過Http連接的(開啟了http模式的發現)。雖然Http的端口多次查驗並沒有問題,但其實在調用方法時還是通過TCP模式通訊的,檢查了tcp端口發現,wcf所用端口與前幾天剛裝的“百度雲管家” 有沖突,“百度雲管家”是百度官方程序用來下載百度雲上的文檔用的,即使不啟動這個程序,自己也會偷偷加載個內部偵測服務在后台跑,並占用10001端口(流氓軟件害死人啊),刪除該程序以后錯誤消除。