2010-08-12 298 views
0

我正在使用WCF客戶端在.NET應用程序中使用Web服務。WCF客戶端連接問題

該服務的端點地址位於端口4338上,且位於HTTPS上,並且採用WS-Security標準進行了保護。

所以地址是一樣的東西:

https://[servername]:4338/[servicename]/ 

我不能只運行的應用程序進行通信的服務。 它給了我下面的錯誤:

無法連接到[服務器名稱]:4338 TCP錯誤代碼10060:連接 嘗試失敗,因爲連接 方沒有正確 一段時間後做出反應,或建立 連接失敗,因爲連接主機 未能迴應 [服務器名稱]:4338

但是當我運行提琴手調查HTTP通信,應用程序啓動到W ork,我將能夠與服務進行溝通。

另外,我想補充說,我在承載第一個服務的同一個Web服務器上有不同的服務,並且第二個服務的地址託管在端口8080上,並且能夠與WCF客戶端通信(沒有運行Fiddler)。

所以,我GOOGLE了,我發現它可能與代理設置有關。你知道這個問題是什麼,我該如何解決它?

謝謝

回答

1

Fiddler充當互聯網代理服務器。一般來說,任何形式的症狀:「它在我使用Fiddler時都有效」意味着「它在有(不同)代理服務器時有效」。

檢查您的代理服務器設置。特別是,如empi建議的那樣,在瀏覽器中嘗試。如果它在那裏工作,這可能是因爲瀏覽器配置了代理設置,並且您沒有爲WCF配置它們。

0

感謝empi回覆。 我找到了答案。 實際上,在我們公司,我們通過「自動配置腳本」 進行代理設置,並且取決於我們在內部針對的網站,腳本會將我們指向適當的代理。 所以,從腳本中我得到了正確的代理地址。我添加了這個代碼 WebRequest.DefaultWebProxy = new WebProxy(「http://xx.xx.xx.xx:8080」); 並解決了問題 因此,WCF客戶端未檢測到自動腳本的設置。 這就是當我運行Fiddler時它工作的原因,因爲Fiddler聽取了http通信,並通過設置再次發送它。