让我列出有关此应用程序的规格:
- 适合我们所有人的 Windows 10
- Asp.net 核心 2.0 网络应用程序
- 我们都用VS2017
- 我们正在使用 IIS Express
- 已为此应用程序启用 SSL
- 我们信任我们的 IIS express localhost 证书
在启动期间,我们执行以下操作:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
我们遇到的问题只发生在我们的一些团队成员的本地环境中。
在后台任务线程中,我们使用System.Net.WebClient
来调用我们应用程序的不同 URL(同样是 localhost),但这会导致异常,其最里面的异常消息是
客户端和服务器无法通信,因为它们没有共同的算法。
我们知道设置可以ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;
解决问题,但我们需要将其保持在Tls12
.
这必须是 IIS Express 或防火墙设置或其他环境中的设置。
Google 上的一些帖子建议我们安装 .NET 4.6+,但我们都已经安装了它,所以不是这样。