Conversor de Fetch para cURL

Converta uma chamada Fetch literal suportada em cURL sem avaliar JavaScript.

Web e API
Preparando seu ambiente de trabalho…

Entrada

Preparando seu ambiente de trabalho…

Saída
Seu resultado aparecerá aqui.

Como usar

  1. Cole uma chamada Fetch com dados literais suportados.
  2. Informe URL base para uma URL relativa e confira as observações.
  3. Copie o comando gerado ou baixe request.sh.

Extrair a solicitação do código Fetch

Um trecho Fetch pode misturar dados da solicitação e lógica arbitrária. O conversor lê uma árvore de sintaxe restrita para traduzir os dados sem executar o trecho.

O cURL gerado existe fora do navegador. Cookies, políticas de mesma origem e outras configurações de ambiente precisam ser considerados separadamente.

Sintaxe literal e valores dinâmicos

São aceitos strings, arrays e objetos literais, JSON.stringify e construtores literais de Headers ou URLSearchParams. Uma chamada com await, uma declaração de variável ou uma cadeia de tratamento de resposta pode envolver a solicitação.

Valores de variáveis, funções, imports e outras expressões dinâmicas não são avaliados. Bodies binários e multipart estão fora deste fluxo.

Exemplo
Entrada
fetch("https://httpbin.org/anything?source=devtoolsy", {
  method: "POST",
  headers: {"Content-Type": "application/json"},
  body: JSON.stringify({message: "Hello, API!", active: true}),
  credentials: "omit"
});
Resultado
curl --globoff 'https://httpbin.org/anything?source=devtoolsy' --location --header 'Content-Type: application/json' --data-raw '{"message":"Hello, API!","active":true}'

Apenas dados de exemplo. Valores, autenticação e comportamento do endpoint devem ser verificados no seu próprio contexto.

Contexto e URL base

Uma URL relativa é resolvida contra a base informada. O armazenamento de cookies e as opções de credenciais do navegador não podem ser copiados como valores privados para um processo shell.

Executar em outro lugar

A saída usa aspas de shell POSIX e não é executada pela página. Revise URL, headers, body e autenticação antes de executar ou compartilhar o script baixado.

Limites de processamento

Ferramentas locais aceitam até 1 MiB, URLs de até 64 KiB e têm limite de processamento de 5 segundos. Solicitações API aceitam 100 headers e 100 linhas de parâmetros, timeout de 1–120 segundos e até 5 MiB de dados de resposta recebidos. Prévias longas de texto são abreviadas. As solicitações vão diretamente ao endpoint escolhido; CORS e políticas do navegador se aplicam.

Leitura complementarMDN · Uso do Fetch
?

Perguntas frequentes

Posso colar qualquer JavaScript?

Não. O parser aceita dados literais suportados. Valores dinâmicos e sintaxe incompatível são informados, não executados.

Cookies do navegador são copiados para cURL?

Não. O processo cURL não compartilha o armazenamento de cookies do navegador. Opções de credenciais são explicadas como contexto, não transformadas em cookies privados.

O que informar em URL base?

Use a origem e o caminho contra os quais a solicitação relativa deve ser resolvida. O conversor não deduz a página original de um trecho.

Os handlers da resposta são executados?

Não. Uma cadeia suportada pode ser reconhecida ao redor da solicitação, mas os callbacks não são executados.

O resultado serve para qualquer shell?

Não. Ele usa aspas POSIX. Windows cmd e PowerShell têm regras diferentes e podem exigir adaptação.

Encontre sua próxima ferramenta

Idioma

Mudar de idioma? Os dados atuais serão apagados. Copie ou baixe seu trabalho primeiro.