Utilisez HttpClient pour passer des appels HTTPS sécurisés
Question :
Lors de l'utilisation de HttpClient pour effectuer une requête HTTPS, une erreur se produit : "La connexion sous-jacente a été fermée : impossible d'établir la confiance pour le canal sécurisé SSL/TLS."
Solution :
Pour résoudre ce problème, veuillez suivre ces étapes :
Définir le protocole de sécurité :
Spécifiez le protocole TLS utilisé par défaut. Ajoutez les lignes suivantes à votre code :
<code class="language-csharp">System.Net.ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;</code>
Modifier le code HttpClient :
Code HttpClient modifié pour prendre en charge les appels HTTPS :
<code class="language-csharp">HttpClient httpClient = new HttpClient(); 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>
Notes supplémentaires :
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!