转自:http://www.dotblogs.com.tw/rainmaker/archive/2010/11/30/19803.aspx

 

前言

在ASP.NET 2.0 WEB AP中去Call Https的Web Service時,如果會發生「WebException: 基礎連接已關閉: 無法為 SSL/TLS 安全通道建立信任關係。」,問了客戶IT後發現可以忽略憑証的檢查!

實作

用以上的Key Word到網路上找,可以找到一堆的解法! 可以寫在Page或是寫在Global.asax之中! 我選了個最Easy的方式,直接寫在Global.asax之中的Application_Start事件中寫入以下的Code,就可以了!

	void Application_Start(object sender, EventArgs e) 
{
    System.Net.ServicePointManager.ServerCertificateValidationCallback =
new System.Net.Security.RemoteCertificateValidationCallback(
    delegate(object MySender,
        System.Security.Cryptography.X509Certificates.X509Certificate MyCertificate,
        System.Security.Cryptography.X509Certificates.X509Chain MyChain,
        System.Net.Security.SslPolicyErrors MyErrors)
    {
        if (MySender is System.Net.WebRequest)
        {
            //忽略憑証檢查,一律回傳true
          return true;
        }
        return false;
    });
}
以上範例為網路上Copy來,並加以改寫的哦!
posted on 2013-02-05 11:35  baby_tao  阅读(1302)  评论(0编辑  收藏  举报