Comment faire une demande HTTP Post en Java?
Envoyez la demande de publication à l'aide de httpurlconnection: créez un objet URL et ouvrez une connexion, définissez la méthode de demande pour publier, configurez l'en-tête de demande telles que le type de contenu, écrivez des données JSON ou formulaire via le flux de sortie, puis lisez la réponse via le flux d'entrée. 2. Lors de l'envoi de données de formulaire, vous devez utiliser le type d'application / x-www-form-urlencoded et coder les paramètres avec UrLencoder. 3. Le code de réponse doit être vérifié, le flux d'entrée doit être lu dans la plage de 200 à 299 et le flux d'erreur doit être lu en cas d'erreur. 4. HttpurlConnection est intégré à JDK et convient aux scénarios simples sans dépendances supplémentaires.
Pour faire une demande HTTP Post en Java, vous pouvez utiliser la classe HTTPURLConnection intégrée à partir du package java.net
. Cette approche ne nécessite aucune bibliothèque externe et fonctionne bien pour les cas d'utilisation de base.
Utilisation de httpurlconnection
Cette méthode vous permet d'envoyer des données à un serveur à l'aide du post. Voici comment le faire:
Mesures:
- Créer un objet URL avec le point de terminaison cible
- Ouvrez une connexion et définissez la méthode de demande de publication
- Activer la sortie et définir les en-têtes de demande (comme le type de contenu)
- Écrivez le corps de la demande (par exemple, JSON ou Données de formulaire)
- Lisez la réponse du flux d'entrée
importer java.io. *; import java.net.httpurlconnection; Importer java.net.url; classe publique httppostexample { public static void main (String [] args) lève une exception { String url = "https://httpbin.org/post"; URL obj = nouvelle URL (URL); HttpurlConnection con = (httpurlconnection) obj.openconnection (); // Définir la méthode de la demande et les en-têtes con.setRequestMethod ("post"); con.setRequestProperty ("contenu-type", "application / json"); con.setDoOutput (true); // Écrivez le corps JSON String JSonInputString = "{\" Name \ ": \" John \ ", \" Age \ ": 30}"; try (outputStream os = con.getOutputStream ()) { Byte [] input = jsonInputString.getBytes ("utf-8"); OS.Write (Input, 0, Input.Length); } // Lire la réponse Essayez (BufferedReader br = new BufferedReader ( new inputStreamReader (con.getInputStream (), "utf-8"))) { StringBuilder Response = new StringBuilder (); String ResponseLine; while ((Responseline = br.readline ())! = null) { réponse.APPEND (Responseline.trim ()); } System.out.println (Response.ToString ()); } } }
Envoi de données de formulaire
Si vous envoyez des données codées par formulaire (comme un formulaire HTML), modifiez le type de contenu et formatez le corps en conséquence:
- Utilisez
application/x-www-form-urlencoded
comme de type de contenu - Format les données comme
key1=value1&key2=value2
- Encoder les valeurs à l'aide d'UrLencoder.Encode ()
con.setRequestProperty ("contenu-type", "application / x-www-form-urlencoded"); String urlParameters = "name =" urlencoder.encode ("John Doe", "utf-8") "& email =" urlencoder.encode ("John@example.com", "utf-8"); // Écrivez ensuite des UrlParameters sur le flux de sortie
Gestion de la réponse et des erreurs
Vérifiez toujours le code de réponse avant de lire le corps de réponse:
- Utilisez
con.getResponseCode()
pour obtenir le statut - Si c'est 200-299, lisez
getInputStream()
- Pour les réponses d'erreur (4xx, 5xx), utilisez
getErrorStream()
Pour des fonctionnalités plus avancées telles que le regroupement de connexions, les délais d'expiration ou la syntaxe plus facile, envisagez d'utiliser des bibliothèques telles que Apache httpClient ou OKHTTP. Mais pour les cas simples, HttpurlConnection est suffisante et fait partie du JDK standard.
Fondamentalement, configurez la connexion, écrivez vos données et lisez le résultat - aucune dépendance supplémentaire nécessaire.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT
Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Tout d'abord, activez la fonction de mise à l'échelle intégrée du navigateur UC, accédez aux paramètres → Paramètres parcourir → Police et composition ou mise à l'échelle de la page, et sélectionnez un rapport préréglé ou un pourcentage personnalisé; Deuxièmement, vous pouvez forcer la taille de l'affichage de la page en ouvrant ou en pinçant des gestes avec deux doigts; Pour les pages Web qui restreignent la mise à l'échelle, vous pouvez demander la version de bureau du site Web pour déverrouiller les restrictions; Les utilisateurs avancés peuvent également modifier les attributs de la fenêtre en exécutant le code JavaScript dans la barre d'adresse pour obtenir un effet de mise à l'échelle forcé plus flexible.

Les systèmes en temps réel nécessitent des réponses déterministes, car l'exactitude dépend du délai de livraison des résultats; Les systèmes durs en temps réel nécessitent des délais stricts, manqués entraînera des catastrophes, tandis que le temps réel doux permet des retards occasionnels; Des facteurs non déterministes tels que la planification, les interruptions, les caches, la gestion de la mémoire, etc. affectent le calendrier; Le plan de construction comprend la sélection des RTO, l'analyse WCET, la gestion des ressources, l'optimisation matérielle et les tests rigoureux.

La réponse consiste à utiliser Thread.currentThread (). GetStackTrace () pour obtenir le nom de la méthode d'appel, et obtenir le nom Somemethod de l'appel un autre Method via l'index 2. Étant donné que l'index 0 est GetStackTrace, 1 est la méthode actuelle, et 2 est l'appelant, l'exemple de production est "appelé paryMethod: Somemethod", qui peut également être mis en œuvre par le jetable, mais que l'attention doit être accordée à la performance, à l'obfrégation.

La manipulation des exceptions Java attrape des exceptions via les blocs de capture d'essai, les blocs finissent par s'assurer que le nettoyage des ressources, les ressources essai avec les ressources, gèrent automatiquement les ressources, lance des exceptions, les exceptions personnalisées pour gérer les erreurs spécifiques et suit les meilleures pratiques telles que la capture d'exceptions spécifiques, et non les exceptions, et d'éviter les blocs de capture vides, ainsi en train d'obtenir un code robuste et maintenable.

La classe facultative est utilisée pour gérer en toute sécurité les valeurs qui peuvent être nuls, en évitant les exceptions de pointeur nul. 1. Créez une instance en utilisant Facultatif.Ofnullable pour gérer les valeurs nulles. 2. Vérifiez et accédez aux valeurs via une sécurité ISPRESENT ou IFPRESENT pour éviter un appel direct pour provoquer des exceptions. 3. Utilisez Orelse et Orelseget pour fournir des valeurs par défaut, ou utilisez OrelSethrow pour lancer une exception personnalisée. 4. Convertir ou filtrer les valeurs par le biais des opérations de la chaîne de carte et de filtre pour améliorer la lisibilité du code et la robustesse.

Edge occupe un CPU élevé en raison de la consommation élevée de ressources basée sur le noyau de chrome, ainsi que des facteurs tels que les pages multi-tabs, l'exécution du plug-in, les scripts de site Web et les mécanismes de rendu; Les solutions comprennent: 1. Fermer des extensions inutiles pour réduire le fardeau en arrière-plan; 2. Activer la fonction "tag de sommeil" pour réduire l'utilisation des ressources de balise inactive; 3. Nettoyez le processus d'arrière-plan et fermez les paramètres liés au rendu GPU; 4. Mettez à jour le navigateur et le système pour assurer la compatibilité et l'optimisation des performances.

Utilisez la méthode getClass () pour obtenir la classe d'exécution de l'objet, tel que str.getClass () pour renvoyer l'objet de classe; Pour les types, vous pouvez utiliser directement la syntaxe String.class. La classe de classe fournit des méthodes telles que getName (), getIMPLename () pour obtenir des informations de classe, telles que num.getClass (). GetIMPlename () pour sortir entier.

Il y a des émétères dethodinjavareTurnsanewstringwithallocurrences of spécifiedCharActersorseencesRlaced.ithastwoforms: OneForReplacingSingleCharactersandanotherForsubString
