Maison >développement back-end >C++ >Pourquoi mon HttpClient ne transmet-il pas les informations d'identification à mon service Windows ?
Résoudre les problèmes d'informations d'identification HttpClient
Lorsque vous utilisez HttpClient pour accéder à un service Windows nécessitant une authentification, les informations d'identification peuvent ne pas être transmises correctement. Cela se produit souvent avec l'API Web ASP.NET MVC et l'usurpation d'identité IIS.
La différence dans la manière dont HttpClient et WebClient gèrent les informations d'identification est essentielle. La propriété UseDefaultCredentials
de HttpClient vise à gérer la récupération des informations d'identification, mais elle peut s'avérer peu fiable.
Pour une transmission garantie des informations d'identification, définissez explicitement UseDefaultCredentials
sur true
dans votre HttpClientHandler
:
<code class="language-csharp">var httpClient = new HttpClient(new HttpClientHandler() { UseDefaultCredentials = true });</code>
Cela indique à HttpClient d'utiliser les informations d'identification par défaut du système d'exploitation. Cela reflète le comportement de WebClient, garantissant que l'utilisateur qui lance la demande d'application Web est correctement authentifié par le service Windows.
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!