Informazioni sullo strumento
Un comando curl è la lingua comune dei bug report sulle API, ma gestire correttamente le virgolette è delicato: gli apici singoli dentro il JSON rompono bash, cmd.exe tratta & e % in modo speciale e PowerShell usa curl come alias di tutt’altro. Questo generatore costruisce il comando da un form (metodo, URL, parametri di query, header, autenticazione Basic/Bearer/API key, body JSON, form-encoded o raw, e le opzioni -i, -L, --compressed, -k e timeout) e lo quota correttamente per bash, cmd di Windows e PowerShell 7.3+. La stessa richiesta viene anche resa come fetch JavaScript, test Playwright con APIRequestContext, Python requests e catena given/when/then di REST Assured. La scheda Parse cURL funziona al contrario: incolla un comando curl, compreso l’output “Copy as cURL” del browser, e il form si compila da solo.
Come si usa
- Inserisci metodo e URL, poi aggiungi parametri di query, header, autenticazione e body. Togli la spunta a una riga per escluderla senza eliminarla.
- Scegli un output: cURL per la tua shell, oppure fetch, Playwright, Python o REST Assured, e copialo.
- Per convertire un comando esistente, passa a “Parse cURL”, incollalo e clicca “Parse into form”. Le opzioni non supportate vengono elencate invece di essere ignorate in silenzio.
Generatore di comandi cURL: domande frequenti
Perché il mio comando curl funziona in bash ma non su Windows?
cmd.exe non capisce gli apici singoli, e PowerShell 5.1 associa curl a Invoke-WebRequest e rimuove le doppie virgolette incorporate negli argomenti nativi. Usa la variante cmd (doppie virgolette con escape tramite caret) o la variante PowerShell 7.3+, che richiama esplicitamente curl.exe.
Che differenza c’è tra -d, --data-raw e --data-binary?
-d tratta una @ iniziale come nome di file e rimuove gli a capo dai file; --data-raw invia la stringa esattamente com’è, anche se inizia con @; --data-binary invia il contenuto del file senza rimuovere gli a capo. Tutte e tre implicano POST e un Content-Type da form, a meno che tu non ne imposti uno.
È sicuro usare -k nei test?
Solo su ambienti locali o di test con certificati self-signed. -k disattiva la verifica del certificato, quindi un test che lo usa non si accorgerebbe di un certificato scaduto o non corrispondente che i client reali rifiutano.