L'envoi de données à un script côté serveur à l'aide de la méthode POST du protocole de transfert hypertexte (HTTP) est une tâche courante dans les applications Web. Cet article fournit une solution complète pour implémenter une requête HTTP POST en Java.
Dans votre scénario spécifique, vous disposez d'une URL http://www.example.com/ page.php?id=10 et vous avez l'intention d'envoyer le paramètre id (valeur 10) au serveur. La méthode POST est utilisée pour envoyer de telles données de formulaire.
Votre tentative initiale d'envoi des données avec la méthode POST est incomplète. Le code crée un objet URLConnection mais ne spécifie pas les paramètres à envoyer ni la méthode HTTP à utiliser.
Pour envoyer efficacement une requête HTTP POST en Java, envisagez d'utiliser Apache HttpClient. Voici un exemple révisé utilisant ses classes HttpClient et HttpPost :
// Create an HTTP client HttpClient httpClient = HttpClients.createDefault(); // Create an HTTP POST request HttpPost httpPost = new HttpPost("http://www.example.com/page.php"); // Prepare request parameters List<NameValuePair> params = new ArrayList<>(); params.add(new BasicNameValuePair("id", "10")); // Set the id parameter // Set request parameters to the POST request httpPost.setEntity(new UrlEncodedFormEntity(params)); // Execute the request and get the response HttpResponse httpResponse = httpClient.execute(httpPost); // Obtain the response entity HttpEntity responseEntity = httpResponse.getEntity(); // Handle the response as needed if (responseEntity != null) { try (InputStream inputStream = responseEntity.getContent()) { // Do something with the response } }
En utilisant les classes HttpClient et HttpPost d'Apache HttpClient, vous pouvez facilement envoyer des requêtes HTTP POST dans vos applications Java. Le code mis à jour fourni dans cet article répond aux limites des approches obsolètes et offre une solution plus fiable et plus efficace.
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!