Categoria: Sviluppo

Convertitore da cURL a fetch()

Idea internaManca uno strumento?

Converti un comando curl in una chiamata JavaScript fetch()

Incolla un comando curl copiato dalla scheda rete di un browser o dalla documentazione di un'API e ottieni una chiamata JavaScript fetch() equivalente, con metodo, intestazioni e corpo riportati fedelmente. La conversione avviene interamente nel tuo browser.

Snippet fetch()
fetch("https://api.example.com/v1/items", {
  method: "POST",
  headers: {
    "Content-Type": "application/json"
  },
  body: "{\"name\":\"Ada\"}"
})
  .then((response) => response.json())
  .then((data) => console.log(data));

Tutto ciò che c'è in questa pagina viene elaborato nel tuo browser. Niente viene caricato.

A cosa serve

Sia la documentazione delle API sia i menu "copia come curl" dei browser producono comandi curl, ma un front-end di solito ha bisogno della stessa richiesta come fetch(). Questo strumento analizza -X/--request, -H/--header, -d/--data (e le sue varianti --data-raw, --data-binary e --data-urlencode), --url, -u/--user e un URL semplice finale, e segnala un errore chiaro invece di un'ipotesi sbagliata per forme che non riconosce, come più argomenti sciolti o un flag non supportato.

Come si usa

  1. Incolla un comando curl.
  2. Rivedi lo snippet fetch() generato.
  3. Copialo nel tuo JavaScript.

Privacy

Questo strumento funziona interamente nel tuo browser. Quello che inserisci non viene mai caricato, salvato o condiviso: chiudendo la scheda sparisce.

Domande frequenti

La richiesta viene inviata da qualche parte?
No. Il comando viene solo analizzato e riscritto come testo; non viene eseguito nulla.
Quali flag di curl sono supportati?
-X/--request, -H/--header, -d/--data (e --data-raw, --data-binary, --data-urlencode), --url, -u/--user per l'autenticazione Basic, e comuni flag senza argomento come -s, -L, -k e -i, che vengono ignorati in sicurezza. Qualsiasi altro flag viene segnalato come non supportato invece di essere scartato silenziosamente.
Perché a volte aggiunge un'intestazione Content-Type?
Se il comando ha un corpo ma nessuna intestazione Content-Type esplicita, lo snippet aggiunge application/json, in linea con il comportamento predefinito comune di curl per le API JSON. Rimuovila o modificala se la tua richiesta richiede altro.