Maison >développement back-end >C++ >Comment passer des appels HTTPS avec HttpClient en utilisant TLS 1.2 ?

Comment passer des appels HTTPS avec HttpClient en utilisant TLS 1.2 ?

DDD
DDDoriginal
2025-01-17 23:51:09614parcourir

How to Make HTTPS Calls with HttpClient Using TLS 1.2?

Sécuriser la communication HTTPS avec HttpClient

La classe HttpClient simplifie les requêtes HTTP, mais les connexions HTTPS peuvent parfois présenter des difficultés, notamment lorsque les serveurs ne prennent en charge que les versions TLS plus récentes comme TLS 1.2. Cet article aborde ce problème courant.

Pour assurer la compatibilité avec TLS 1.2 (et autres versions pertinentes), ajoutez cette ligne de code :

<code class="language-csharp">System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;</code>

Cette commande active explicitement TLS 1.2, TLS 1.1 et TLS 1.0, offrant une compatibilité plus large avec divers serveurs.

Voici comment intégrer cela dans votre HttpClient code :

<code class="language-csharp">HttpClient httpClient = new HttpClient();

// Enable TLS 1.2 and other compatible protocols
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>

En intégrant cet ajustement, votre application se connectera de manière fiable aux serveurs HTTPS à l'aide de protocoles TLS sécurisés, permettant un échange de données réussi.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn