幽浮404

c#HttpWebRequest进行https的post请求握手失败
最近在用HttpWebRequestpost数据的时候发现https的请求总是会被远程主机关闭连接,明明代码没动过...
扫描右侧二维码阅读全文
26
2019/04

c#HttpWebRequest进行https的post请求握手失败

最近在用HttpWebRequestpost数据的时候发现https的请求总是会被远程主机关闭连接,明明代码没动过之前也是https的url都是可以的啊,然后抓包查看了一下发现是Tls握手失败了,网站的用的tls是Tls12,而我的框架是.net framework 4.0是没有tls12的,随后把.net framework升级成4.5在请求前加上。

     if (requestUrlString.StartsWith("https", StringComparison.OrdinalIgnoreCase))
            {
                ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback((object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) =>
                {
                    return true; //总是接受  
                });
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3  | SecurityProtocolType.Tls |SecurityProtocolType.Tls11 |SecurityProtocolType.Tls12;
            }

测试握手成功,post成功!

Last modification:September 2nd, 2019 at 02:00 pm
如果觉得我的文章对你有用,请随意赞赏

Leave a Comment