Maison  >  Article  >  Java  >  Pourquoi les en-têtes ne sont-ils pas reconnus dans mes requêtes HttpURLConnection ?

Pourquoi les en-têtes ne sont-ils pas reconnus dans mes requêtes HttpURLConnection ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-09 01:22:02866parcourir

Why are Headers Not Being Recognized in My HttpURLConnection Requests?

Ajout d'en-têtes aux requêtes HttpURLConnection

Lorsque vous essayez d'ajouter des en-têtes à vos requêtes HttpURLConnection, vous pouvez rencontrer des situations dans lesquelles le serveur ne parvient pas à reconnaître le informations d'en-tête. Si la définition de la propriété de requête à l'aide de setRequestProperty() ne résout pas le problème, envisagez la solution suivante :

Solution :

Pour vous assurer que les en-têtes sont correctement définis, essayez les étapes suivantes :

  1. Créer une nouvelle instance de HttpURLConnection :

    URL myURL = new URL(serviceURL);
    HttpURLConnection myURLConnection = (HttpURLConnection)myURL.openConnection();
  2. Préparer la valeur d'en-tête :

    String userCredentials = "username:password";
    String basicAuth = "Basic " + new String(Base64.getEncoder().encode(userCredentials.getBytes()));
  3. Définir l'"Autorisation" header :

    myURLConnection.setRequestProperty ("Authorization", basicAuth);
  4. Configurer la connexion :

    myURLConnection.setRequestMethod("POST"); // Assuming a POST request
    myURLConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    myURLConnection.setRequestProperty("Content-Length", "" + postData.getBytes().length);
    myURLConnection.setRequestProperty("Content-Language", "en-US");
    myURLConnection.setUseCaches(false);
    myURLConnection.setDoInput(true);
    myURLConnection.setDoOutput(true);

Cette approche modifiée devrait garantir que l'en-tête "Autorisation" est correctement ajouté à la requête et doit être reçu par le serveur.

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