Maison >développement back-end >C++ >Comment corriger « Erreur inattendue lors d'un envoi » lors de l'utilisation de l'authentification de base avec HttpWebRequest ?

Comment corriger « Erreur inattendue lors d'un envoi » lors de l'utilisation de l'authentification de base avec HttpWebRequest ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-10 19:26:42221parcourir

How to Fix

Dépannage « Erreur inattendue lors de l'envoi » dans HttpWebRequest avec authentification de base

L'utilisation de l'authentification de base avec HttpWebRequest peut parfois entraîner un message "Erreur inattendue lors d'un envoi". Ce problème est souvent résolu en ajoutant manuellement l'en-tête d'autorisation à votre demande.

La solution consiste à encoder votre nom d'utilisateur et votre mot de passe sous forme de chaîne Base64, garantissant ainsi la compatibilité entre différents serveurs HTTP. La méthode System.Convert.ToBase64String, combinée à l'encodage ISO-8859-1, permet d'obtenir ceci :

<code class="language-csharp">string username = "abc";
string password = "123";
string encoded = Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes(username + ":" + password));</code>

Ensuite, ajoutez cette chaîne codée au schéma d'authentification « de base » et ajoutez-la en tant qu'en-tête « Autorisation » à votre HttpWebRequest objet :

<code class="language-csharp">httpWebRequest.Headers.Add("Authorization", "Basic " + encoded);</code>

Cet ajout manuel d'en-tête, utilisant l'encodage spécifié, garantit une communication correcte avec les serveurs nécessitant une authentification de base, évitant ainsi "l'erreur inattendue lors de l'envoi" pendant le processus de demande.

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