Conversor cURL para Fetch
Converta comandos cURL em código da API JavaScript fetch(). Analisa sinalizadores curl: -X (método), -H (cabeçalhos), -d/--data (corpo), --json, -u (autenticação básica), --data-urlencode, -G (GET com dados) e muito mais.
Examples:
Como Usar Conversor cURL para Fetch
- 1Cole seu comando cURL no campo de entrada.
- 2A ferramenta analisa todas as sinalizações e opções curl automaticamente.
- 3O código JavaScript fetch() é gerado com cabeçalhos, método e corpo equivalentes.
- 4Copie o código fetch diretamente em seu projeto JavaScript.
ZenovayAnalytics
Veja quem está no seu site agora mesmo.
- Acompanhamento de visitantes em tempo real
- Privacidade em primeiro lugar, sem banner de cookies
- Configurado em dois minutos
Ferramentas Relacionadas
Formatador e Validador de JSON
Formate, valide e embeleze dados JSON com destaque de sintaxe e detecção de erros.Decodificador JWT
Decodifique e inspecione tokens JWT. Visualize cabeçalho, payload e verifique assinaturas.Codificar/Decodificar Base64
Codifique texto para Base64 ou decodifique Base64 de volta para texto. Suporta dados UTF-8 e binários.Encode/Decode de URL
Codifique ou decodifique componentes de URL. Trate caracteres especiais, strings de consulta e URLs completas.Perguntas Frequentes
Quais sinalizadores curl esse conversor suporta?▾
-X / --request: método HTTP (GET, POST, PUT, PATCH, DELETE, etc.). -H / --header: adicionar cabeçalho de solicitação (múltiplos suportados). -d / --data / --data-raw: corpo da solicitação. --data-urlencode: dados codificados por URL. --json: enviar corpo JSON (define Content-Type automaticamente). -u / --user: autenticação básica (user:password). -L / --location: seguir redirecionamentos (incluído como comentário). --compressed: aceitar respostas comprimidas. -b / --cookie: cabeçalho de cookie. --form / -F: dados de formulário (multipart). -k / --insecure: pular verificação SSL (anotado como comentário).
Como -d/--data funciona em curl vs fetch?▾
Em curl, -d envia dados como o corpo da solicitação com Content-Type: application/x-www-form-urlencoded por padrão. Múltiplos sinalizadores -d concatenam dados com &. Em fetch, o equivalente é body: "key=value&other=val" com um Content-Type correspondente. Se você usar --json em curl (curl 7.82+), ele define Content-Type: application/json e envia corpo JSON — isso mapeia para body: JSON.stringify(data) em fetch. Se seu curl já inclui -H "Content-Type: application/json", o conversor detecta isso e formata o corpo adequadamente.
Como a autenticação básica (-u user:pass) é convertida?▾
curl -u username:password envia autenticação HTTP básica. Em JavaScript fetch, isso mapeia para um cabeçalho Authorization: Authorization: Basic {base64(username:password)}. O conversor gera btoa("username:password") no código fetch. Nota: incorporar credenciais em código do lado do cliente é inseguro — para uso em produção, passe credenciais no lado do servidor ou use variáveis de ambiente.
E quanto a cookies (-b/--cookie)?▾
curl -b "name=value; other=val" envia cookies como um cabeçalho Cookie, que mapeia diretamente para um cabeçalho fetch: "Cookie": "name=value; other=val". No entanto, observe que fetch baseado em navegador não pode definir o cabeçalho Cookie para solicitações entre origens (restrições CORS). Esta é uma característica de segurança — cookies para solicitações entre origens são tratados automaticamente pelo navegador com base no domínio do cookie e nas configurações SameSite.
Por que o código fetch gerado pode precisar de ajustes manuais?▾
Curl tem muitos sinalizadores que não têm equivalentes diretos em fetch: --retry (sem retry nativo em fetch), --max-time/--connect-timeout (requer AbortController com setTimeout), --proxy (não suportado em fetch do navegador), --cert/--key (certificados de cliente TLS, não em fetch do navegador). O conversor trata os sinalizadores mais comuns. Para casos extremos, você pode precisar envolver fetch com lógica de retry ou usar uma biblioteca HTTP Node.js como axios ou got que suporta mais opções.