Maison > Java > javaDidacticiel > Comment composer et envoyer des requêtes HTTP en Java à l'aide de HttpUrlConnection ?

Comment composer et envoyer des requêtes HTTP en Java à l'aide de HttpUrlConnection ?

Barbara Streisand
Libérer: 2024-12-30 11:16:09
original
237 Les gens l'ont consulté

How to Compose and Send HTTP Requests in Java using HttpUrlConnection?

Composition d'une requête HTTP en Java

En Java, la composition et l'envoi d'une requête HTTP impliquent l'utilisation de la classe java.net.HttpUrlConnection.

Pour construire une requête HTTP, suivez ces étapes :

  • Établir une connexion : Créez un objet URL représentant le serveur Web cible et établissez une instance HttpURLConnection.
  • Configurer les en-têtes : Définissez les en-têtes HTTP tels que "Content-Type" et "Content-Length" pour spécifier le type de contenu de la requête et length.
  • Activer la sortie : Définissez la propriété setDoOutput sur true pour autoriser la sortie vers la connexion.

Pour envoyer la demande :

  • Write Request : Utilisez un DataOutputStream pour écrire les paramètres de la requête dans la sortie de la connexion stream.
  • Obtenir la réponse : Récupérez la réponse du serveur en ouvrant un InputStream depuis la connexion et en lisant la réponse ligne par ligne.

Voici un exemple d'envoi une requête POST utilisant HttpUrlConnection :

public static String executePost(String targetURL, String urlParameters) {
  // Create connection and set headers
  HttpURLConnection connection = (HttpURLConnection) new URL(targetURL).openConnection();
  connection.setRequestMethod("POST");
  connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
  connection.setRequestProperty("Content-Length", Integer.toString(urlParameters.getBytes().length));

  // Enable output and write request
  connection.setDoOutput(true);
  DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
  wr.writeBytes(urlParameters);
  wr.close();

  // Get response
  BufferedReader rd = new BufferedReader(new InputStreamReader(connection.getInputStream()));
  StringBuilder response = new StringBuilder();
  String line;
  while ((line = rd.readLine()) != null) {
    response.append(line);
    response.append('\r');
  }
  rd.close();

  return response.toString();
}
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal