Outils

Convertisseur curl vers code

Transformez une commande curl — y compris le « Copy as cURL » de Chrome — en code fetch, Python requests, Go, axios ou PHP.

S’exécute dans le navigateurConvertisseurs de code8,2 k
Gratuit

Entrée

0 B

Résultat

Le résultat apparaîtra ici.

La documentation des API donne ses exemples sous forme de commandes curl et les outils de développement du navigateur copient les requêtes en curl, mais le code que vous écrivez n’est pas un script shell. Ce convertisseur lit la commande comme le feraient un shell et curl — guillemets, continuations de ligne par barre oblique inverse, chaînes $'…', -d répétés joints par &, --json qui définit les deux en-têtes JSON, -G qui déplace les données dans la chaîne de requête — et écrit la même requête en JavaScript fetch, Python requests, Go net/http, axios ou PHP cURL. Tout ce qui ne peut pas être transposé, comme un proxy, l’authentification digest ou un certificat client, est signalé dans un commentaire en tête du code généré au lieu d’être abandonné sans un mot.

Comment ça marche

  • La commande est découpée en mots selon les règles de guillemets du shell POSIX, et avec les échappements ^ de cmd.exe lorsque vous collez la sortie de « Copy as cURL (cmd) » de Chrome.
  • Un corps JSON est écrit comme un littéral natif — un dict pour Python, un objet pour fetch et axios — afin d’être facile à modifier ; les autres corps sont conservés sous la forme exacte de la chaîne que curl enverrait.
  • -F devient un formulaire multipart avec des fichiers ouverts depuis le disque, -u une authentification Basic, -m un délai d’expiration et -k la façon propre au langage cible d’ignorer la vérification des certificats.
  • Tout ce qui suit un pipe, comme | jq, est omis, et un commentaire le signale ; les variables shell comme $API_KEY sont recopiées telles quelles, avec un rappel de les remplacer.

Où vont vos données

Nulle part. Cet outil s’exécute entièrement dans votre navigateur : le texte collé est traité par la page, jamais transmis à un serveur ni consigné dans un journal.

Cet outil est gratuit et ne demande aucun compte. Ses résultats n’existent que dans la page ouverte et ne sont enregistrés nulle part.

Ce que ça coûte

Cet outil est gratuit, sans connexion ni points.

Questions fréquentes

Gère-t-il le « Copy as cURL » de Chrome et de Firefox ?
Oui. La version bash (Copy as cURL, ou Copy as cURL (bash)) utilise des guillemets shell ordinaires. Sous Windows, Chrome propose aussi Copy as cURL (cmd), qui échappe les caractères avec ^ ; cette forme est également reconnue et déséchappée. La variante PowerShell n’est pas du tout de la syntaxe curl — c’est un script PowerShell Invoke-WebRequest — et n’est pas prise en charge.
Pourquoi ma clé d’API est-elle encore écrite $OPENAI_API_KEY ?
Parce que dans le shell, c’est une variable, remplie au moment où la commande s’exécute, et le convertisseur ne peut pas connaître sa valeur. Le code la conserve littéralement et un commentaire liste toutes les variables trouvées. Lisez-la depuis l’environnement dans votre langage — os.environ en Python, process.env en Node, os.Getenv en Go — plutôt que de coller la clé dans le code source.
Est-ce la bibliothèque curlconverter ?
Non. curlconverter est le projet open source bien connu pour la même tâche, crédité sur cette page, mais cet outil possède son propre analyseur, plus petit, écrit pour les cinq cibles qu’il propose. Il couvre les options qui façonnent la requête — méthode, en-têtes, données, formulaires, authentification, cookies, délais, redirections, vérification TLS — et liste celles qu’il n’a pas converties dans le commentaire d’ouverture du code.
Que deviennent -L et --compressed ?
fetch, requests, le http.Client de Go et axios suivent déjà les redirections et décompressent les réponses gzip par défaut : il n’y a donc rien à ajouter pour eux. Le cURL de PHP ne fait ni l’un ni l’autre de lui-même ; la sortie PHP définit donc CURLOPT_FOLLOWLOCATION et CURLOPT_ENCODING lorsque la commande les demandait.

L’open source derrière

Cet outil est une implémentation autonome, sans bibliothèque tierce. curlconverter/curlconverter (MIT) fait le même travail sous forme de bibliothèque : pour l’intégrer à votre programme, commencez par là plutôt que d’appeler une page web.

curlconverter/curlconverter

Aussi appelé

  • curl vers code
  • convertir curl en python
  • curl vers fetch
  • curl to python requests
  • convertir commande curl
  • copy as curl en code
  • curl vers php