Aller au contenu
ToolMug

Convertisseur cURL en code

Collez une commande curl, par exemple copiée depuis les outils de développement de votre navigateur, et obtenez la même requête sous forme de code prêt à l’emploi. En-têtes, corps JSON, envois de formulaires et authentification sont repris ; rien n’est envoyé nulle part.

Fonctionne dans votre navigateur — rien de ce que vous saisissez n’est envoyé

Dans les DevTools de Chrome ou d’Edge, faites un clic droit sur une requête dans l’onglet Réseau et choisissez Copier → Copier en tant que cURL (bash ou cmd).

Mode d’emploi

  1. Collez une commande curl, ou chargez l’exemple.
  2. Choisissez JavaScript fetch, Node.js axios, Python requests ou Go.
  3. Copiez le code généré dans votre projet.

Explication des options

Options prises en charge
-X, -H, -d / --data-raw / --data-binary / --data-urlencode, --json, -F, -u, -b, -A, -e, -G, -I, -L, -k et --compressed, en forme courte, longue ou --option=valeur. Les options qui ne concernent que l’affichage, comme -s, -v et -o, sont ignorées.
Corps JSON
Un corps envoyé avec un type de contenu JSON est transformé en objet littéral, par exemple json=payload en Python, pour être facile à modifier.
Redirections
curl ne suit pas les redirections sans l’option -L. Le code généré conserve ce comportement, par exemple allow_redirects=False en Python.

Exemple

Cette commande, telle que copiée depuis un navigateur :

curl -X POST https://api.example.com/v1/users \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer TOKEN' \
  -d '{"name":"Ada","age":36}'

devient ceci avec fetch :

const response = await fetch("https://api.example.com/v1/users", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "Authorization": "Bearer TOKEN",
  },
  body: JSON.stringify({
    "name": "Ada",
    "age": 36
  }),
  redirect: 'manual',
});

et ceci avec Python requests :

response = requests.post("https://api.example.com/v1/users", headers=headers, json=payload, allow_redirects=False)

En Python, l’en-tête Content-Type est omis de headers parce que l’argument json= le définit. redirect: 'manual' et allow_redirects=False conservent le comportement par défaut de curl, qui ne suit pas les redirections.

Questions fréquentes

Comment obtenir une commande curl depuis mon navigateur ?

Ouvrez les outils de développement, allez dans l’onglet Réseau, faites un clic droit sur une requête et choisissez Copier → Copier en tant que cURL. Les formats bash et cmd de Windows sont tous deux reconnus.

Mes jetons ou cookies sont-ils envoyés quelque part ?

Non. La commande est analysée dans votre navigateur ; rien n’est exécuté ni envoyé. Pensez à retirer les secrets avant de partager le code généré.

Pourquoi une option est-elle signalée comme non prise en charge ?

Les options qui modifient la manière dont la requête est faite mais n’ont pas d’équivalent simple, comme les certificats client ou les proxys, ne sont pas converties. Retirez-les et ajoutez le réglage à la main.

Confidentialité

Cet outil fonctionne entièrement dans votre navigateur. Vos fichiers et vos textes sont traités sur votre appareil et ne sont jamais envoyés à nos serveurs.

Outils similaires