我使用此代码获取网页内容,但在 WebResponse myResponse = myRequest.GetResponse();
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("https://www.ecfr.gov");
System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate (Object obj, X509Certificate X509certificate, X509Chain chain, System.Net.Security.SslPolicyErrors errors)
{
return true;
};
myRequest.Method = "GET";
WebResponse myResponse = myRequest.GetResponse();
StreamReader sr = new System.IO.StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
string result = sr.ReadToEnd();
sr.Close();
myResponse.Close();
我知道它需要 SSL/TLS 证书,但我想知道为什么我仍然会收到错误消息?
最佳答案
试试这个
static void Main(string[] args)
{
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;
var client = new HttpClient();
var result = client.GetAsync("https://www.ecfr.gov").Result;
var str = result.Content.ReadAsStringAsync().Result;
}
关于c# - 无法使用 https 获取网络响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43157477/