Maison >Java >javaDidacticiel >Pourquoi ma méthode setRequestProperty() n'ajoute-t-elle pas d'en-têtes aux requêtes HttpURLConnection ?

Pourquoi ma méthode setRequestProperty() n'ajoute-t-elle pas d'en-têtes aux requêtes HttpURLConnection ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-10 12:04:02918parcourir

Why Isn't My setRequestProperty() Method Adding Headers to HttpURLConnection Requests?

Ajout d'en-têtes aux demandes de connexion HttpURL

Lorsque vous travaillez avec des requêtes HTTP, il est souvent nécessaire d'ajouter des en-têtes personnalisés à la requête. Cependant, certains utilisateurs ont rencontré des problèmes où la méthode setRequestProperty() ne semble pas fonctionner comme prévu, ce qui fait que le serveur ne reçoit aucune requête avec les en-têtes prévus.

Pour résoudre ce problème, il est important de assurez-vous d'avoir défini correctement les propriétés suivantes :

  • hc.setDoOutput(true) : Spécifie que la requête a un corps.
  • hc.setDoInput(true) : Spécifie que le la réponse devrait avoir un corps.
  • hc.setUseCaches(false) : désactive la mise en cache pour la connexion.

Ensuite, vous devez gérer correctement la logique d'authentification :

  • Si vous utilisez l'authentification de base, essayez d'utiliser l'extrait de code suivant :
String authorization = "username:password";
String basicAuth = "Basic " + new String(Base64.getEncoder().encode(authorization.getBytes()));
hc.setRequestProperty("Authorization", basicAuth);
  • Si vous utilisez un autre type d'authentification, ajustez l'autorisation variable en conséquence.

Une fois ces paramètres configurés correctement, les en-têtes doivent être ajoutés avec succès à la requête et le serveur doit recevoir les requêtes comme prévu.

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