首页 > 编程语言 >c# 请求 web api ssl失败1

c# 请求 web api ssl失败1

时间:2024-07-29 11:56:37浏览次数:10  
标签:web return string ssl c# Encoding request buffer

.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;
        }

 

标签:web,return,string,ssl,c#,Encoding,request,buffer
From: https://www.cnblogs.com/sishahu/p/18329799

相关文章

  • rsync命令详解
     rsync命令是Linux和其他Unix-like系统上一个非常强大的命令行工具,主要用于数据同步和文件传输。它的名字是"remotesync"的缩写,但不仅限于远程同步,也支持本地文件和目录之间的同步。rsync的主要优势在于其高效的增量传输方式,即只传输源和目标之间发生变化的文件块,而不是整个文......
  • pip 安装错误:缺少 SOCKS 支持的依赖项
    当我尝试使用pipinstall时,它不断抛出此错误。$pipinstalldjangoERROR:CouldnotinstallpackagesduetoanOSError:MissingdependenciesforSOCKSsupport.我尝试安装request[socks],但随后出现错误,指出它无法识别袜子版本。以下是代理设......
  • Css为例 Hugo博客框架编译时将Assets中未实际使用的文件引入Public
    今日作Hugo博客开发的过程中,想使用main.css作为其他css的入口,即项目仅引用main.css,子样式模块在main.css中引入。编译后发现public中仅有main.css,没有其他的css文件导致样式无法正常使用。遂寻找解决办法:在项目仅实际引用main.css的情况下,将其他css文件导入public。解决办法为引......
  • 如何恢复 Excel 文件 [未保存/覆盖/删除]
    MicrosoftExcel是Microsoft用户使用的强大办公软件。用户可以创建各种工作簿来提高工作效率。但是,当您意外删除一些重要的Excel文件或由于电源故障或软件崩溃导致Excel文件未保存时,您可能会感到不知所措。在这种情况下,您可以浏览我们的帖子并找到适合您恢复Excel文件......
  • OpenAI发布AI搜索引擎SearchGPT,怎么申请?
     北京时间7月26日凌晨,OpenAI正式推出了AI驱动的搜索引擎SearchGPT。与传统搜索引擎相比,在SearchGPT输入查询后,用户将得到一个AI生成的、包含实时网络信息的会话式回答。 SearchGPT的特点直接给出答案使用SearchGPT,你可以像使用其他搜索引擎一样输入查询。但它与传统搜......
  • java中的tcp
    在Java中,TCP(TransmissionControlProtocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。它运行在IP(InternetProtocol,互联网协议)层之上,为应用层提供可靠的通信服务。TCP通过确保数据包的顺序传输、重传丢失的数据包以及错误检测,来保证数据的完整性和可......
  • 如何理解tcp的三次握手?
    TCP(传输控制协议)是一种网络通信协议,用于可靠地传输数据。它是互联网协议套件(TCP/IP)中的一部分,负责将数据分割成小块(称为数据包),通过网络传输,然后在接收端重新组装这些数据包,确保它们按照正确的顺序到达,并且没有丢失或损坏。三次握手是TCP连接建立过程中的一个重要步骤。在三次......
  • Ubuntu Docker 安装 卸载
    1、使用脚本安装Dockerwget获取脚本并安装dockerwget-qO-https://get.docker.com/|sh2、启动docker后台服务sudoservicedockerstart3、卸载dockers要卸载Docker,你需要根据你的操作系统来选择合适的命令。以下是在不同操作系统中卸载Docker的方法。在Ubunt......
  • 如何根据Linux Kernel Mailing List打patch
    Linux内核正在不断开发和改进。每天的补丁都会提交到Linux内核邮件列表(LKML)。其中一些补丁被接受并合并到主流Linux内核中,供用户使用,而其他补丁则永远无法使用。有时从LKML获取补丁是有用的,例如,如果你在内核中开发,或者只是因为你想保持在前沿。另一个原因可能是,您需要向LKML提出......
  • Pandas 将从 OECD 修订后的统计 API 中获取数据
    OECD更改了其统计API。在以前的版本中,此结构有效。oecd=pdmx.Request("OECD")data=oecd.data(resource_id="HH_DASH",key="AUS+DEU+ITA+JPN+KOR+GBR+USA+EU27_2020+EMU+G7M+OECD.RGDP_INDEX+RHHGDI_INDEX.Q/all?startTime=2007-Q1&endTime=202......