Convertir curl en Dart

Convertissez des commandes curl en code Dart à l'aide du package http. curl2code s'exécute entièrement dans votre navigateur via WebAssembly — vos données restent privées. Pour Kotlin, essayez notre convertisseur curl vers Kotlin. Pour Swift, voir curl vers Swift. Vous trouverez ci-dessous des exemples Dart prêts à l'emploi pour Flutter.

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 le package http de Dart ?

Le package http est le client HTTP recommandé pour Dart et Flutter. Il fournit une API simple basée sur Future pour GET, POST, les téléversements multipart et le streaming. Installez-le avec dart pub add http. Il fonctionne sur toutes les plateformes Dart — mobile, web et serveur. curl2code l'utilise par défaut pour les conversions Dart.

http vs dio vs HttpClient — lequel devrais-je utiliser ?

http est simple et léger — idéal pour les requêtes de base. dio ajoute des intercepteurs, FormData, la progression du téléchargement et l'annulation. HttpClient (dart:io) est de plus bas niveau et intégré mais plus verbeux. Pour les applications Flutter nécessitant des intercepteurs, choisissez dio. Pour des clients mobiles similaires, voir curl vers Kotlin ou curl vers Swift.

Comment gérer l'authentification en Dart ?

Passez les en-têtes à la requête : http.get(url, headers: { "Authorization": "Bearer $token" }). Pour l'authentification Basic, encodez avec base64Encode(utf8.encode("$user:$pass")). curl2code convertit les drapeaux -u et -H 'Authorization' en code Dart avec des en-têtes correctement typés.

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

Utilisez http.MultipartRequest : créez la requête, ajoutez des champs avec request.fields['key'] = 'value', et des fichiers avec request.files.add(await http.MultipartFile.fromPath('file', path)). Envoyez ensuite avec request.send(). curl2code convertit les drapeaux -F vers ce modèle.

Comment gérer les erreurs HTTP en Dart ?

Le package http ne lève pas d'exception sur les erreurs HTTP — vérifiez manuellement response.statusCode. Enveloppez les appels dans try/catch pour SocketException (erreurs réseau) et TimeoutException. Utilisez http.Client avec close() pour un nettoyage approprié des ressources dans les applications à longue durée de vie.

Comment utiliser async/await avec Dart HTTP ?

Toutes les méthodes HTTP de Dart renvoient un Future — utilisez final response = await http.get(Uri.parse(url)). L'async/await de Dart est intégré au langage. Pour les requêtes parallèles, utilisez Future.wait([request1, request2]). Pour des modèles asynchrones similaires, voir curl vers TypeScript ou curl vers Swift.

Comment définir des délais d'expiration en Dart ?

Utilisez la méthode .timeout() sur n'importe quel Future : http.get(url).timeout(Duration(seconds: 30)). Cela lève une TimeoutException en cas de dépassement. Pour plus de contrôle, créez un http.Client et configurez via le HttpClient sous-jacent de dart:io avec connectionTimeout.

Comment utiliser un proxy en Dart ?

Utilisez HttpClient de dart:io : HttpClient()..findProxy = (uri) => 'PROXY proxy:8080'. Pour le package http, créez un IOClient personnalisé enveloppant le HttpClient configuré. Dart respecte également les variables d'environnement HTTP_PROXY et NO_PROXY.

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

Convertissez une commande curl POST comme curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL en Dart en utilisant curl2code. Le code généré utilise http.post(uri, body: jsonEncode(data), headers: {'Content-Type': 'application/json'}). 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 http.

Comment ajouter une autorisation par jeton Bearer en Dart ?

Passez curl -H "Authorization: Bearer YOUR_TOKEN" URL à curl2code et il générera le code http avec l'en-tête d'authentification : headers: {'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 Dart ?

curl2code convertit curl -H "Content-Type: application/json" URL en code http avec l'en-tête approprié : headers: {'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 http correcte.

Liens utiles

Guides curl

Convertir curl vers d'autres langages