Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Membuat Panggilan HTTPS Selamat dengan HttpClient dalam C#?

Bagaimanakah Saya Boleh Membuat Panggilan HTTPS Selamat dengan HttpClient dalam C#?

DDD
Lepaskan: 2025-01-18 00:02:10
asal
503 orang telah melayarinya

How Can I Make Secure HTTPS Calls with HttpClient in C#?

Gunakan HttpClient untuk membuat panggilan HTTPS

Dalam C#, kelas HttpClient ialah alat yang berkuasa untuk membuat panggilan API Web. Ia menyediakan cara yang mudah dan cekap untuk menghantar dan menerima data, jadi ia sangat popular di kalangan pembangun. Walau bagaimanapun, menggunakan HttpClient untuk membuat panggilan HTTPS kadangkala menimbulkan cabaran.

Dayakan panggilan HTTPS

Untuk mendayakan panggilan HTTPS menggunakan HttpClient, anda mesti menyelesaikan isu perhubungan kepercayaan SSL/TLS dahulu. Secara lalai, HttpClient hanya mempercayai sijil yang diprapasang dalam stor sijil sistem pengendalian. Jika sijil pelayan tiada dalam stor, anda akan menghadapi ralat mengatakan bahawa hubungan kepercayaan tidak dapat diwujudkan.

Untuk mengatasi masalah ini, anda boleh menambah baris kod berikut pada program anda:

<code>System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;</code>
Salin selepas log masuk

Kod ini menunjukkan bahawa HttpClient menyokong TLS versi 1.2, 1.1 dan 1.0. Jika pelayan menyokong versi TLS yang lebih tinggi, seperti TLS 1.3, kod ini mungkin perlu dikemas kini dengan sewajarnya.

Sediakan sijil dan kunci

Dalam sesetengah kes, pelayan mungkin memerlukan pelanggan untuk memberikan sijil dan kunci awam/peribadi untuk pengesahan. Untuk memberikan kelayakan ini menggunakan HttpClient, anda boleh menggunakan kelas HttpClientHandler. Contohnya adalah seperti berikut:

<code>var httpClientHandler = new HttpClientHandler();
httpClientHandler.ClientCertificates.Add(new X509Certificate2(...));</code>
Salin selepas log masuk

Dalam kod ini, ... mewakili laluan ke fail sijil dan, jika perlu, kata laluan. HttpClient kemudiannya boleh dijadikan instantiated menggunakan HttpClientHandler tersuai:

<code>HttpClient httpClient = new HttpClient(httpClientHandler);</code>
Salin selepas log masuk

Dengan memasukkan peningkatan ini ke dalam kod HttpClient anda, anda boleh membuat panggilan HTTPS selamat dan melaksanakan mekanisme kepercayaan dan pengesahan dengan cekap.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membuat Panggilan HTTPS Selamat dengan HttpClient dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan