c# 请求 web api ssl失败1

.net 低版本请求https 接口失败,,,升级.net版本后解决,,同时忽略ssl验证

复制代码
  public string HttpPost(string url, string body)
        {
            Encoding encoding = Encoding.UTF8;
            string jsonText = string.Empty;
            string dataText1 = string.Empty;
            if (string.IsNullOrEmpty(url.Trim()))
            {
                return "";
            }
            //接收证书进行身份验证
            ServicePointManager.ServerCertificateValidationCallback =
                new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);
            //ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
            request.Method = "POST";
            request.Accept = "text/plain, */*; q=0.01";
            request.ContentType = "application/json;charset=utf-8";
            byte[] buffer = encoding.GetBytes(body);
            request.ContentLength = buffer.Length;
            request.GetRequestStream().Write(buffer, 0, buffer.Length);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
            {
                jsonText = reader.ReadToEnd();

            }
            return jsonText;
        }
        public bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
        {
            //直接确认,否则打不开
            return true;
        }
复制代码

 

posted @   gds111789  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示