[英]Error connecting to secure web service!
嘗試在 Visual Studio 2008 中創建對 3rd 方 Web 服務的 Web 引用時,我始終收到以下錯誤。
'從傳輸流中收到意外的 EOF 或 0 字節'
如果我嘗試使用 wsdl.exe 工具生成代理類,我也會遇到同樣的錯誤。
我可以確認 Web 服務正常運行,因為我可以通過 SOAPUi 客戶端等第 3 部分工具進行連接。
我錯過了一些簡單的東西嗎?
我已經找到以下帖子: http : //social.msdn.microsoft.com/Forums/en-US/asmxandxml/thread/37c376a3-f50c-4b57-a1df-83dc43fcddbf
雖然它准確地描述了我的問題,但我不確定我是否理解解決方案。 有沒有人能澄清一下?
(來自上面引用的 MSDN 論壇)
設想:
本地端:Asp.net 2.0 Web Service、IIS 6.0
遠程端:Java Web Services、Apache、本地 ssl 證書(https)
解決方案:
簡而言之,問題在於當 web 服務嘗試連接以建立 ssl 握手時,默認情況下使用 TLS,在這種情況下,java web 服務是 SSLv3,但錯誤從未以純文本形式顯示。
為了配置它,您已設置為:
System.Net.ServicePointManager.SecurityProtocol = Net.SecurityProtocolType.Ssl3
在此之后,服務將握手並繼續。
最后,我下載了 Visual Studio 2010 試用版,猜猜它是怎么工作的!
不要問我為什么。
太舊了,但如果其他人正在掙扎,這里是另一個在遺留代碼中對我有用的嘗試:
System.Net.ServicePointManager.SecurityProtocol = (System.Net.SecurityProtocolType)3072;
這是 TLS 1.2,但該值在 .NET 2.0 的枚舉中不存在。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.