C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。...

 这里因为的原因是https请求要检查证书,有些证书不正确的,网页不会正常展示内容,而会返回链接不安全,是否继续。不安全的链接是否继续。

详情参考:

C#动态调用webService出现 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系。http://www.mamicode.com/info-detail-1628676.html

我的代码片段

using System.Net.Http;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using System.Security.Authentication;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using System.Web;
using System.Text;
using System.Net;

namespace IronFury.Data
{
    public static class HttpClientType
    {
        public static readonly string CRUD = "CRUD";
        public static readonly string CRUD_CREATE = "C";
        public static readonly string CRUD_UPDATE = "U";
        public static readonly string CRUD_RETRIVE = "R";
        public static readonly string CRUD_DELETE = "D";
    }
    public static class CertificateTrust
    {
        //public bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
        //{   // 总是接受    
        //    return true;
        //}
        public static void SetCertificatePolicy()
        {
            ServicePointManager.ServerCertificateValidationCallback
                       += RemoteCertificateValidate;
        }  
        private static bool RemoteCertificateValidate(
           object sender, X509Certificate cert,
            X509Chain chain, SslPolicyErrors error)
        {
            
            System.Console.WriteLine("Warning, trust any certificate");
            return true;
        }
    } 
internal static string GetString(this HttpClient client) { CertificateTrust.SetCertificatePolicy(); var responseMessage = client.GetAsync("").Result; var result = responseMessage.Content.ReadAsStringAsync().Result; return result; } } }

 

转载于:https://www.cnblogs.com/Blogs-Wang/p/6872922.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值