Mengatasi Cabaran Penyulitan SSL untuk Permintaan Web dalam Sambungan HTTPS
Mengakses kandungan daripada tapak web yang disulitkan HTTPS menggunakan WebRequest boleh menghadapi halangan jika penyulitan tidak dikendalikan dengan betul. Apabila cuba membuat permintaan ke tapak sedemikian, ralat mungkin timbul disebabkan oleh sijil SSL yang tidak sah atau isu yang serupa.
Untuk menangani perkara ini, anda boleh mengubah suai coretan kod yang anda berikan:
// Ignore any certificate validation errors ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications); // Execute the original code Uri uri = new Uri(url); WebRequest webRequest = WebRequest.Create(uri); WebResponse webResponse = webRequest.GetResponse(); ReadFrom(webResponse.GetResponseStream());
Kaedah AcceptAllCertifications yang ditakrifkan di bawah membolehkan anda memintas ralat pengesahan sijil SSL:
public bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors) { return true; }
Oleh menggabungkan pembetulan ini, anda boleh memastikan program anda berjaya mengakses kandungan daripada tapak web yang disulitkan HTTPS, walaupun sijil SSL tidak dianggap sah secara lalai.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengatasi Ralat Pengesahan Sijil SSL Apabila Menggunakan WebRequest dalam Sambungan HTTPS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!