最近在做一个项目的时候,使用到了别人的WebService接口(该接口是用java写的而且还带证书)。原来以为可以直接通过添加web引用搞定的,但后来拿到地址的时候发现在IE中无法访问。经过沟通对方说在IE中无法访问但可以通过程序访问,现在通过程访问出现下面的提示:“请求被中止: 未能创建 SSL/TLS 安全通道”
以下是代码(下面代码只是为了测试链路以及获取wsdl说明文档): string urlStr = "https://Server:80/dgjsj_interface/services/lockPersonService?wsdl";
//请求的地址
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlStr); //创建证书文件
X509Certificate objx509 =X509Certificate.CreateFromCertFile(Server.MapPath("~/ActiveXcab") + "\\Test-pub.cer"); //添加到请求里
request.ClientCertificates.Add(objx509);
request.Method = "GET";
ServicePointManager.ServerCertificateValidationCallback += ValidateServerCertificate;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
//读返回的流
StreamReader reader = new StreamReader(request.GetResponse().GetResponseStream()); //把得到的WSDL文件放到一个richTextBox1
TextBox1.Text = reader.ReadToEnd();现在头有点大,求指教
以下是代码(下面代码只是为了测试链路以及获取wsdl说明文档): string urlStr = "https://Server:80/dgjsj_interface/services/lockPersonService?wsdl";
//请求的地址
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlStr); //创建证书文件
X509Certificate objx509 =X509Certificate.CreateFromCertFile(Server.MapPath("~/ActiveXcab") + "\\Test-pub.cer"); //添加到请求里
request.ClientCertificates.Add(objx509);
request.Method = "GET";
ServicePointManager.ServerCertificateValidationCallback += ValidateServerCertificate;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
//读返回的流
StreamReader reader = new StreamReader(request.GetResponse().GetResponseStream()); //把得到的WSDL文件放到一个richTextBox1
TextBox1.Text = reader.ReadToEnd();现在头有点大,求指教
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货