Convertir curl en Java

Convertissez des commandes curl en code Java à l'aide de l'API moderne HttpClient. curl2code s'exécute entièrement dans votre navigateur via WebAssembly — aucune donnée ne quitte votre appareil. Pour le développement Kotlin, essayez notre convertisseur curl vers Kotlin. Pour C# (.NET), voir curl vers C#. Vous trouverez ci-dessous des exemples Java prêts à l'emploi.

Comment copier curl depuis votre navigateur

  1. 1

    Ouvrir les DevTools

    Appuyez sur F12 ou Ctrl+Shift+I pour ouvrir les outils de développement de votre navigateur.

  2. 2

    Aller dans l'onglet Network

    Cliquez sur l'onglet Network et effectuez l'action qui déclenche la requête HTTP.

  3. 3

    Copier comme cURL

    Faites un clic droit sur la requête → CopyCopy as cURL. Collez-la ensuite ci-dessus.

Foire Aux Questions

Qu'est-ce que Java HttpClient ?

Le HttpClient de Java (introduit dans Java 11) est un client HTTP moderne et intégré qui remplace l'ancien HttpURLConnection. Il prend en charge HTTP/2, les requêtes asynchrones, WebSocket et une API de construction fluide. Aucune dépendance externe n'est nécessaire. curl2code prend également en charge OkHttp, Jsoup et HttpURLConnection comme alternatives.

HttpClient vs OkHttp vs HttpURLConnection — lequel utiliser ?

HttpClient (Java 11+) est le standard moderne — utilisez-le pour les nouveaux projets. OkHttp est mature, largement utilisé dans Android, avec des intercepteurs et le pooling de connexions. HttpURLConnection fonctionne sur toutes les versions de Java mais est verbeux. Pour Android/Kotlin, voir notre convertisseur curl vers Kotlin. Pour une approche moderne similaire, essayez curl vers C#.

Comment gérer l'authentification en Java ?

Définissez l'en-tête Authorization : request.header("Authorization", "Bearer " + token). Pour l'authentification Basic, encodez avec Base64.getEncoder().encodeToString((user + ":" + pass).getBytes()). HttpClient prend également en charge Authenticator pour une gestion automatique des identifiants.

Comment envoyer des données de formulaire multipart en Java ?

Le HttpClient de Java 11+ nécessite une construction manuelle du corps multipart avec des chaînes de délimitation. Utilisez HttpRequest.BodyPublishers.ofString() avec des parties formatées manuellement. OkHttp simplifie cela avec MultipartBody.Builder. curl2code génère le code multipart approprié pour la bibliothèque Java choisie.

Comment gérer les erreurs HTTP en Java ?

Avec HttpClient, vérifiez response.statusCode() après chaque requête — il ne lève pas d'exception sur les erreurs HTTP. Enveloppez les appels dans un try/catch pour IOException (réseau) et InterruptedException (asynchrone). OkHttp lève une IOException en cas d'échec et fournit response.isSuccessful() pour les vérifications de statut.

Comment effectuer des requêtes HTTP asynchrones en Java ?

HttpClient fournit sendAsync() renvoyant un CompletableFuture : client.sendAsync(request, BodyHandlers.ofString()).thenApply(HttpResponse::body). Enchaînez avec thenAccept(), thenCompose(), ou utilisez CompletableFuture.allOf() pour des requêtes parallèles. OkHttp utilise enqueue() avec une interface Callback.

Comment définir des délais d'attente dans Java HttpClient ?

Définissez sur le client : HttpClient.newBuilder().connectTimeout(Duration.ofSeconds(10)).build(). Par requête : request.timeout(Duration.ofSeconds(30)). OkHttp utilise OkHttpClient.Builder().connectTimeout(10, TimeUnit.SECONDS).readTimeout(30, TimeUnit.SECONDS).

Comment configurer un proxy en Java ?

Avec HttpClient : HttpClient.newBuilder().proxy(ProxySelector.of(new InetSocketAddress("proxy", 8080))).build(). OkHttp utilise la classe Proxy : new OkHttpClient.Builder().proxy(new Proxy(Proxy.Type.HTTP, address)). Java respecte également les drapeaux JVM -Dhttp.proxyHost. curl2code convertit automatiquement les drapeaux -x.

Comment envoyer une requête POST avec un corps JSON en Java ?

Convertissez une commande curl POST comme curl -X POST -H "Content-Type: application/json" -d "{"key":"value"}" URL en Java en utilisant curl2code. Le code généré utilise HttpRequest.newBuilder().POST(BodyPublishers.ofString(jsonString)).build(). curl2code détecte automatiquement les drapeaux -d/--data avec du contenu JSON et définit l'en-tête Content-Type approprié dans le code HttpClient.

Comment ajouter une autorisation par jeton Bearer en Java ?

Passez curl -H "Authorization: Bearer YOUR_TOKEN" URL à curl2code et il générera le code HttpClient avec l'en-tête d'authentification : .header("Authorization", "Bearer YOUR_TOKEN"). curl2code détecte les jetons Bearer à partir des drapeaux -H "Authorization: Bearer ..." et --oauth2-bearer. Pour le Basic auth, utilisez -u user:pass.

Comment définir l''en-tête Content-Type en Java ?

curl2code convertit curl -H "Content-Type: application/json" URL en code HttpClient avec l'en-tête approprié : .header("Content-Type", "application/json"). Pour les données -d, curl utilise par défaut application/x-www-form-urlencoded ; pour les téléchargements de formulaires -F, il utilise multipart/form-data. curl2code associe chacun à l'API HttpClient correcte.

Liens utiles

Guides curl

Convertir curl vers d'autres langages