我使用HttpWebRequest访问其他网站时,出现"请求被中止:无法建立 SSL / TLS安全通道"错误,于是goog和百度了一番,提供的答案基本 是:ServicePointManager.ServerCertificateValidationCallback写委托
public
ResponseModel GetHtml(
string
url)
{
ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
}
private
bool
ValidateServerCertificate(
object
sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
return
true
;
}
|
但这种方法对我无效,该出现的错误还是继续出现.
最终解决办法是,在访问url前执行语句 ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;即可
public
ResponseModel GetHtml(
string
url)
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
}
|