首页 > 解决方案 > 我是否必须在每个请求前添加 SecurityProtocol?VB.Net / C#

问题描述

嘿,我有一个请求 URL 并修复 SSL 问题的程序,我发现必须在其前面添加以下代码:

Dim serverCertificateValidationCallback As [Delegate] = ServicePointManager.ServerCertificateValidationCallback
System.Net.ServicePointManager.ServerCertificateValidationCallback = Function(se As Object, cert As System.Security.Cryptography.X509Certificates.X509Certificate, chain As System.Security.Cryptography.X509Certificates.X509Chain, sslerror As System.Net.Security.SslPolicyErrors) True
ServicePointManager.Expect100Continue = True
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
ServicePointManager.SecurityProtocol = CType(3072, SecurityProtocolType)

那么我是否必须在主窗体加载事件中只添加一次此代码,还是必须在每个函数/子/窗体中添加它?

标签: c#vb.netsecurityprotocols

解决方案


ServicePointManager是静态的,因此只需设置一次。不过考虑一下:

在此处输入图像描述

来源:https ://docs.microsoft.com/en-us/dotnet/api/system.net.servicepointmanager?view=net-5.0


推荐阅读