Melindungi Permintaan HTTPS dengan HttpClient C#
Panduan ini menerangkan cara membuat panggilan HTTPS selamat menggunakan kelas HttpClient
dalam C#. HttpClient
, alternatif unggul kepada WebClient
, mengendalikan permintaan HTTP tetapi memerlukan pelarasan untuk HTTPS. Ikuti langkah ini:
Banyak pelayan mewajibkan versi TLS tertentu. Jika konfigurasi pelanggan anda tidak serasi, sambungan HTTPS akan gagal disebabkan oleh isu kepercayaan. Untuk menangani perkara ini, tambahkan kod berikut:
<code class="language-csharp">System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;</code>
Untuk mendayakan HTTPS, ubah suai kod anda seperti yang ditunjukkan di bawah:
<code class="language-csharp">HttpClient httpClient = new HttpClient(); // Set TLS 1.2 as the default connection protocol System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; httpClient.BaseAddress = new Uri("https://foobar.com/"); httpClient.DefaultRequestHeaders.Accept.Clear(); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/xml")); var task = httpClient.PostAsXmlAsync<devicerequest>("api/SaveData", request);</code>
Pertimbangan Penting:
Untuk senario yang memerlukan pengesahan sijil, anda mungkin perlu memberikan sijil secara eksplisit. Rujuk dokumentasi rasmi HttpClient
untuk panduan terperinci tentang pengurusan sijil.
Atas ialah kandungan terperinci Bagaimana untuk Membuat Panggilan HTTPS Selamat dengan HttpClient dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!