C# Https 访问


        public static String sendHttpsRequest(String url, HttpAction action)
        {
            String result = "";
          
            //如果需要在代码中加入证书,则需要使用HttpWebRequest对象进行请求,代码如下:

            //添加验证证书的回调方法

            ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate);

            HttpWebRequest httpRequest = (HttpWebRequest)HttpWebRequest.Create(url);

            X509Certificate cerCaiShang = new X509Certificate(@"C:\Users\wen\Documents\wen\temp\client.p12", "123456");

            httpRequest.ClientCertificates.Add(cerCaiShang);

            HttpWebResponse httpResponse = (HttpWebResponse)httpRequest.GetResponse();

            Stream receiveStream = httpResponse.GetResponseStream();

            StreamReader sr = new StreamReader(receiveStream); //创建一个stream读取流 
            result = sr.ReadToEnd();   //从头读到尾,放到字符串html 


            return result;
        }


        // 回调方法

        public static bool ValidateServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)

        {

            if (sslPolicyErrors == SslPolicyErrors.None)

                return true;

            return true;

        }

猜你喜欢

转载自wen19851025.iteye.com/blog/2256029