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!