首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >RestSharp &TLS1.1

RestSharp &TLS1.1
EN

Stack Overflow用户
提问于 2015-05-23 13:00:48
回答 3查看 16.1K关注 0票数 16

使用RestSharp &TLS1.1有什么已知的问题吗?我们目前使用RestSharp向供应商发送post请求。该供应商将不再接受TLS 1.0连接并更改为TLS 1.1。

问题是,当他们从TLS1.0切换到TLS1.1时,我们的RestSharp代码就不再起作用了。

我已经在2008 R2 (在启用了1.1和1.2的注册表设置之后)和Windows8.1上进行了测试。他们切换到TLS1.1,RestResponse是:

“基础连接已关闭:发送时发生意外错误”

切换回TLS 1.0,没有问题。我已经测试了使用Google Chrome访问他们的网站,它确实显示了TLS 1.1,因此服务器和客户端工作站都能够使用TLS 1.1。似乎RestSharp才是问题所在……

EN

回答 3

Stack Overflow用户

发布于 2015-08-24 20:56:52

我还没有找到任何方法来配置RestSharp来使用不同的协议。但您可以在发出请求之前覆盖ServicePointManager中的默认协议:

代码语言:javascript
运行
复制
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11;

这就解决了问题。您还可以更改Windows注册表设置,以在默认情况下使用TLS 1.1/1.2。Here is在相关问题中提供更多信息。

票数 39
EN

Stack Overflow用户

发布于 2020-09-01 02:53:56

RestSharp已经对此问题进行了documented

异常是由WebRequest引发的,因此您需要告诉.NET框架接受比默认情况更多的证书类型。在应用程序中的某个地方添加下面这一行应该可以解决这个问题:

代码语言:javascript
运行
复制
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

因此,请考虑在Program.cs中添加上面的行。

票数 0
EN

Stack Overflow用户

发布于 2020-06-05 15:41:14

简单的解决方法是将您的项目更新到最新的.Net框架。

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30409048

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档