c# - 是否可以在 .NET 4.0 框架上使用 TLS1.2 发送 HttpWebRequest

标签 c# .net-4.0 httpwebrequest .net-4.5 tls1.2

我的应用程序连接到 Experian 服务器,Experian 将很快停止支持 TLS 1.0 和 TLS 1.1。所有使用 HTTPS 的连接都必须使用 TLS 版本 1.2。

我想对该问题进行一些研究,看看在 .NET 4.0 框架上使用 TLS 1.2 发送 HttpWebRequest 是否有效

如果没有,我可能需要在 .NET 4.5 上创建一个 webservice 并调用它的方法,如果有,我什么都不需要。

有人遇到过这个问题吗?

最佳答案

是的,它支持它,但您必须在 ServicePointManager 上明确设置 TLS 版本。在调用 Experian 之前,随时(在同一应用程序域中)运行此代码:

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12

更新

参见 @iignatov 's answer对于您必须为框架 v4.0 做什么。我的代码适用于 4.5+

关于c# - 是否可以在 .NET 4.0 框架上使用 TLS1.2 发送 HttpWebRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37869135/

相关文章:

c# - 接收具有不同编码的发布数据

c# - 如何将静态文本设置为JsonResult?

c# - 将 List<T> 转换为嵌套 Dictionary<string, Dictionary<string, T>

c# - 将 Web 应用程序转换为 ASP.NET MVC 3 - 如何启用 Razor View ?

vb.net - HttpWebRequest.BeginGetResponse block ;异步获取 HttpWebResponse 的正确方法是什么?

仅Windows 7上的.NET 4串行端口ObjectDisposedException

.net - httpwebrequest Cookie 容器

c# - id 的当前上下文不存在

c# - 如何将 ContextMenu 放入 TabPage 的页眉

C# - HttpWebResponse 重定向检查器