调用有赞API时,报如下错误:
HTTP请求错误:System.Net.WebException: 请求被中止: 未能创建 SSL/TLS 安全通道。
经过排查得知,有赞的的api仅支持TLSv1.2协议版本
我的程序使用的.NET Framework 4.0 不支持TLSv1.2协议版本
.NET Framework 4.0 Ssl3、Tls
.NET Framework 4.5 - 4.6.2 Ssl3、Tls、Tls11、Tls12
.NET Framework 4.7 Ssl3、SystemDefault、Tls、Tls11、Tls12
.NET Framework 4.8 Ssl3、SystemDefault、Tls、Tls11、Tls12、Tls13
解决方法就是,将自己的程序修改成支持Tls12的.NET Framework 4.5,指定ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 之后,就不再报错了。
相关程序请求代码:
if (url.ToLower().StartsWith("https"))
{
//如果要在C#中忽略证书验证,可以设置ServicePointManager.ServerCertificateValidationCallback:
ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true;
ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; //Tls12
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?