HTTPS와 함께 WebRequest 사용: SSL 암호화 문제 극복
URL 작업 시 HTTP 프로토콜과 HTTPS 프로토콜을 모두 접하는 것이 일반적입니다. SSL 암호화를 활용하는 HTTPS는 통신에 추가 보안 계층을 추가합니다. 그러나 이는 WebRequest를 사용할 때 문제가 발생할 수 있습니다.
문제:
사용자가 다음 코드를 사용하여 HTTPS URL에 액세스할 때 문제가 발생했습니다.
Uri uri = new Uri(url); WebRequest webRequest = WebRequest.Create(uri); WebResponse webResponse = webRequest.GetResponse(); ReadFrom(webResponse.GetResponseStream());
분석:
특정 URL이 유효하지 않은 SSL 인증서가 있는 사이트를 가리키는 경우 이 코드는 실패할 수 있습니다.
해결책:
문제를 해결하고 SSL 암호화된 사이트에 대한 액세스를 허용하려면 사이트에서는 다음 단계를 구현하십시오.
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications); public bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors) { return true; }
이 두 줄은 SSL 인증 문제를 무시하여 인증서에 관계없이 대상 사이트에 대한 액세스를 효과적으로 허용합니다. 유효성.
이 솔루션을 구현한 후에는 제공된 코드가 HTTP 및 HTTPS URL 모두에서 콘텐츠를 성공적으로 읽을 수 있어야 합니다.
위 내용은 SSL 인증서 문제에도 불구하고 WebRequest를 사용하여 HTTPS URL에 액세스하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!