Analyseur cURL

Analysez des commandes cURL en composants structurés. Extrayez l'URL, la méthode, les en-têtes, le corps, l'authentification et générez des équivalents JavaScript fetch() et axios.

Analyser les composants Générer fetch() Générer axios

Comment utiliser l'analyseur cURL

1

Collez la commande cURL

Copiez une commande cURL depuis les outils de développement du navigateur (clic droit sur une requête et « Copier comme cURL ») et collez-la dans la zone de saisie.

2

Analysez les composants

La commande est décomposée automatiquement en URL, méthode, en-têtes, corps, authentification et cookies.

3

Obtenez le code

Copiez le code fetch() ou axios généré pour l'utiliser dans vos projets JavaScript.

Qu'est-ce que cURL ?

cURL (Client URL) est un outil en ligne de commande et une bibliothèque pour transférer des données en utilisant divers protocoles. Il est largement utilisé pour tester des API, déboguer des requêtes HTTP et automatiser des transferts de données. Les outils de développement du navigateur peuvent exporter les requêtes réseau sous forme de commandes cURL, facilitant ainsi le partage et la reproduction de requêtes HTTP.

Outil en ligne de commande

cURL est un outil en ligne de commande pour transférer des données via HTTP, HTTPS, FTP et d'autres protocoles.

Export DevTools navigateur

La plupart des DevTools permettent de copier une requête réseau en cURL en un clic droit.

Conversion de code

Convertissez les commandes cURL en code JavaScript fetch() ou axios.

Questions fréquentes

Peut-il générer du code fetch() à partir de cURL ?

Oui. L'outil convertit les commandes cURL en extraits de code JavaScript fetch() et axios. Le code généré préserve l'URL, la méthode, les en-têtes et le corps de la commande cURL d'origine.

Prend-il en charge les données POST et les téléchargements de fichiers ?

Oui. Il analyse les options -d/--data, --data-raw et --data-binary, y compris les charges utiles JSON. Les données du corps JSON sont automatiquement formatées avec une indentation correcte dans le code généré.

Quelles options cURL sont prises en charge ?

Les options courantes dont -X (méthode), -H (en-têtes), -d (données), -b (cookies), -u (authentification), -k (non sécurisé), -L (suivre les redirections), --compressed et d'autres. Les options complexes ou inhabituelles peuvent ne pas être entièrement analysées.

Comment convertir une commande cURL en code PHP ?

L'outil mappe les options sur l'API curl de PHP : l'URL va dans CURLOPT_URL, chaque -H dans CURLOPT_HTTPHEADER, -d dans CURLOPT_POSTFIELDS et -u dans CURLOPT_USERPWD. Collez la commande, copiez le snippet généré, et le code passe-partout (RETURNTRANSFER, gestion des erreurs) est généré pour vous.

Que fait l'option -H et comment les en-têtes répétés sont-ils gérés ?

-H 'Content-Type: application/json' ajoute un en-tête ; répétez -H pour chaque en-tête supplémentaire et tous sont envoyés. -H peut aussi supprimer un en-tête en le nommant sans valeur (-H 'User-Agent:') ou envoyer une valeur vide avec un point-virgule final. Plusieurs options -H préservent l'ordre, ce qui compte pour certaines API.

Comment l'authentification est-elle transmise dans cURL ?

HTTP Basic utilise -u user:password (curl l'encode en base64 dans un en-tête Authorization). Les tokens Bearer passent par un en-tête : -H 'Authorization: Bearer <token>'. Les clés d'API apparaissent soit dans les en-têtes, soit en paramètres de requête selon le service. Attention : les secrets sur la ligne de commande finissent dans l'historique du shell - préférez un fichier netrc ou une variable d'environnement.

Quelle est la différence entre -d, --data-binary et -F ?

-d envoie les données en application/x-www-form-urlencoded et supprime les retours à la ligne ; --data-binary envoie la charge telle quelle, ce dont les API JSON ont besoin ; -F construit une requête multipart/form-data, la seule option pour l'upload de fichiers. Les paramètres façon GET utilisent -G combiné avec -d, ce qui déplace les données dans la chaîne de requête de l'URL.

Pourquoi le code converti échoue-t-il alors que la commande cURL fonctionnait ?

Souvent, un problème de guillemets : le shell retire les guillemets avant que curl ne les voie, mais le langage cible les réinterprète - les apostrophes qui sont sûres dans le shell demandent un traitement différent en JavaScript. Autres pièges : les antislashs de fin de ligne des commandes multilignes, les signes pourcentage dans les URLs qui cassent le formatage % dans certains langages, et les fichiers de cookies référencés par -b/-c qui n'existent pas dans le nouvel environnement.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}