cURL vers Dart

Collez une commande curl et obtenez du code Dart qui fait la même requête avec package:http.

cURL vers Dart analyse votre commande dans le navigateur. Les identifiants ne quittent pas votre appareil.

Convertir vers Swift

À propos de cURL vers Dart

La documentation du backend fournit une commande curl ; une application Flutter a besoin de Dart. Ce convertisseur fait le pont : il analyse les options curl comme curl lui-même et produit du code fondé sur package:http, le paquet dont dépend déjà presque tout projet Dart ou Flutter. Les en-têtes sont rassemblés dans une map typée, un corps JSON devient une map Dart encodée par jsonEncode plutôt qu’une chaîne collée, et l’authentification basique est reconstruite avec base64Encode. Les verbes sans raccourci passent par un http.Request, si bien qu’une méthode inhabituelle produit tout de même du code opérationnel.

Fonctionnalités

Comment utiliser cURL vers Dart

  1. Collez la commande curl de votre documentation d’API
  2. Lisez le Dart généré à droite
  3. Vérifiez les avertissements sur les options non reportables
  4. Copiez le code ou téléchargez-le en fichier .dart

Exemple

Entrée

curl -X PUT https://api.example.com/users/1 -H 'Authorization: Bearer TOKEN' -d '{"role":"admin"}'

Sortie

final response = await http.put(url, headers: headers, body: body);

Le verbe vient de -X, et le corps JSON est bâti en map Dart avant encodage.

Erreurs courantes et dépannage

Foire aux questions

Le code produit fonctionne-t-il dans une application Flutter ?
Oui. package:http se comporte de la même façon en Flutter et en Dart pur, le code de requête se colle donc tel quel dans une classe de service.
Faut-il utiliser package:http ou Dio ?
package:http est l’option officielle la plus légère et couvre presque toutes les requêtes. Dio ajoute intercepteurs, annulation et confort multipart, avec une API assez proche pour transposer facilement.
Comment un corps JSON est-il converti ?
Il est analysé et écrit en littéral de map Dart, puis encodé par jsonEncode. Objets et tableaux imbriqués restent lisibles et les valeurs se remplacent directement par des variables.
Et si la méthode n’a pas d’aide comme http.get ?
Le code produit construit un http.Request avec le verbe en chaîne et l’envoie par send(), ce qui couvre PURGE, LINK ou tout autre verbe.
La commande curl est-elle envoyée pour être convertie ?
Non. L’analyse et la génération se font dans votre navigateur, les jetons et clés d’API restent donc sur votre appareil.

Outils associés

Tous les outils ArrayKit