Convertitore cURL: da cURL a fetch, Python, Axios e altro
Incolla un comando curl, ad esempio copiato dai DevTools del browser, e ottieni codice pronto all'uso in 8 linguaggi. Header, body JSON, form, upload di file, autenticazione e cookie vengono tutti convertiti.
Funziona nel browserNessuna registrazioneNessun caricamento
Come usare Convertitore cURL
- Copia una richiesta come cURL: nei DevTools di Chrome o Firefox, clic destro su una richiesta nella scheda Network → Copy → Copy as cURL.
- Incollala nel riquadro di input. Sono supportati comandi su più righe con
\, le continuazioni^di Windows e le stringhe$'…'. - Scegli il target: JavaScript fetch, Axios, Node.js, Python requests, Python httpx, Go, PHP o HTTPie.
- Leggi gli eventuali avvisi sotto l'output. Elencano le opzioni che non hanno un equivalente nel linguaggio di destinazione.
- Copia il codice o scaricalo come file.
Perché convertire i comandi curl in codice?
curl è la lingua franca dell'HTTP. La documentazione delle API mostra esempi in curl, i DevTools del browser esportano le richieste come curl e i team di supporto inviano le riproduzioni in curl. Quando vuoi quella richiesta dentro un'applicazione devi riscriverla a mano: spostare ogni -H in un oggetto di header, trasformare -d in un body, convertire -u in basic auth e ricordare che -G sposta i dati nella query string. Questo convertitore fa la traduzione per te e produce codice da incollare direttamente nel progetto.
Opzioni curl supportate
| Opzione | Convertita in |
|---|---|
-X, -I, -G | Metodo HTTP (POST viene dedotto quando c'è un body) |
-H, -A, -e, -b | Header, User-Agent, Referer e cookie |
-d, --data-raw, --data-binary, --data-urlencode, --json | Body della richiesta: oggetti JSON, campi form o testo grezzo |
-F | Dati form multipart, inclusi gli upload @file |
-u, --oauth2-bearer | Basic auth o un token Bearer |
-k, -L, -m, -x, --compressed | Verifica TLS, redirect, timeout, proxy e compressione |
I body JSON diventano oggetti veri
Quando la richiesta invia JSON (un header Content-Type: application/json, --json o un body che risulta JSON valido), il convertitore genera strutture dati native invece di una stringa con escape: JSON.stringify({...}) per fetch, un oggetto semplice per Axios e json= con un dict Python (True, False, None) per requests e httpx. Così il payload è facile da modificare e da riempire con variabili.
Differenze da tenere presenti
I browser non possono disattivare i controlli dei certificati né instradare una singola richiesta tramite un proxy, quindi -k e -x compaiono solo come commenti nel codice fetch per browser. curl non segue i redirect a meno che tu non passi -L, mentre fetch, requests e Go li seguono per impostazione predefinita. Un body inviato con -d senza Content-Type viene codificato da curl come form; se sembra JSON, il convertitore lo invia come JSON e te lo segnala con un avviso.
Domande frequenti
Il mio comando curl viene inviato a un server?
Come copio una richiesta come cURL da Chrome?
Gestisce gli upload di file?
-F name=@file diventa FormData in JavaScript, un dict files= in Python, mime/multipart in Go e CURLFile in PHP. -d @file e -T file leggono il body della richiesta da un file.Cosa succede alle opzioni che il convertitore non conosce?
-s, -v o -o, vengono ignorati perché non cambiano la richiesta.