Conversor de HAR para cURL

Transforme as requisições capturadas em um arquivo HAR do navegador em comandos cURL executáveis.

HAR para cURL funciona inteiramente no seu navegador. O arquivo é analisado no seu dispositivo, então os cookies de sessão que ele contém nunca saem dele.

Criado e mantido por Udit Agarwal

Abrir o Visualizador de arquivos HAR

Sobre HAR para cURL

HAR para cURL lê o arquivo de rede que as ferramentas de desenvolvedor do navegador exportam e transforma qualquer requisição em um comando para colar no terminal. É o caminho mais rápido para fechar a lacuna do clássico «funciona no navegador mas não no meu script»: cada cabeçalho, o método e o corpo da requisição vêm exatamente como o navegador enviou. Dois detalhes recebem cuidado. As aspas usam o escape POSIX para aspas simples dentro de aspas simples, então um corpo JSON com apóstrofo não trunca o comando em silêncio. E como um HAR carrega cookies de sessão ativos, uma chave os remove antes de você colar algo em um relatório de bug.

Recursos

  • Lê qualquer exportação HAR e lista todas as requisições
  • Filtre por URL, método ou código de status
  • Converta uma requisição ou todo o conjunto filtrado de uma vez
  • Aspas POSIX corretas para corpos com aspas ou apóstrofos
  • Remove cabeçalhos Cookie, Authorization e de chave de API sob demanda
  • Descarta cabeçalhos gerenciados pelo navegador e pseudocabeçalhos HTTP/2

Como usar HAR para cURL

  1. Nas ferramentas de desenvolvedor, abra Rede e escolha salvar tudo como HAR com conteúdo
  2. Solte aqui o arquivo .har, ou cole o conteúdo
  3. Escolha uma requisição da lista, ou deixe Todas para converter todas
  4. Ative remover cookies e autenticação se for compartilhar o comando, e copie

Exemplo

Entrada

POST https://api.example.com/login with a JSON body

Saída

curl 'https://api.example.com/login' \
  -H 'Content-Type: application/json' \
  --data-raw '{"user":"jo"}' \
  --compressed

Nenhum -X é emitido para um POST com corpo, porque --data já o implica.

Erros comuns e solução de problemas

  • O comando roda mas o servidor devolve 401 ou 403. — Provavelmente o cabeçalho de autenticação foi removido, ou a sessão que ele carregava expirou. Desative a opção de remover cookies e reexporte o HAR com a sessão aberta.
  • A ferramenta diz que o JSON não é um arquivo HAR. — Um HAR tem um objeto log de nível superior com um array entries. Um corpo de resposta salvo ou um JSON copiado não terão essa estrutura: reexporte com a opção de salvar tudo como HAR.
  • O corpo de uma requisição está faltando no comando. — Exporte incluindo o conteúdo. Sem ele o HAR registra os cabeçalhos mas omite os corpos, então não há o que colocar em --data-raw.

Perguntas frequentes

Como exporto um arquivo HAR do meu navegador?
Abra as ferramentas de desenvolvedor, vá ao painel Rede, reproduza a requisição, clique com o botão direito em qualquer linha e escolha salvar tudo como HAR com conteúdo. Chrome, Edge, Firefox e Safari oferecem alguma versão disso.
Por que o comando cURL gerado não inclui -X POST?
Porque --data-raw já implica POST, e adicionar -X por cima pode mudar como o cURL trata redirecionamentos. O indicador de método só é emitido quando é realmente necessário, como em PUT, PATCH ou DELETE.
É seguro compartilhar um comando cURL vindo de um HAR?
Por padrão não: um HAR captura cookies de sessão ativos e cabeçalhos de autorização, que valem como uma senha. Ative antes a opção de removê-los.
Meu arquivo HAR é enviado ao convertê-lo?
Não. O arquivo é analisado inteiramente no seu navegador, o que importa porque um HAR costuma conter cookies de sessão e dados pessoais de cada requisição capturada.

Ferramentas relacionadas

  • Visualizador de HAR — Inspecione cada requisição, cabeçalho e tempo de um arquivo .har.
  • cURL para Fetch — Converta um comando curl em uma chamada fetch() de JavaScript.
  • curl para Python — Converta um comando curl em um script Python com a biblioteca requests.
  • Cliente de API — Envie requisições HTTP, monte cabeçalhos e parâmetros e inspecione respostas; salva as últimas 25.
  • curl para Node.js — Converta um comando curl em uma requisição Node.js com axios.
  • Analisador de URL — Decomponha uma URL em suas partes e liste os parâmetros de consulta.

Mais ferramentas de Ferramentas de API

  • Postman para cURL — Converte uma coleção do Postman em comandos cURL.
  • cURL para C# — Converte um comando curl em código C# com HttpClient.
  • cURL para Java — Converte um comando curl em código Java com HttpClient.
  • cURL para Ruby — Converte um comando curl em código Ruby com Net::HTTP.
  • cURL para PowerShell — Converte um comando curl em uma chamada Invoke-RestMethod do PowerShell.
  • cURL para Swift — Converte um comando curl em código Swift com URLSession.
  • cURL para Dart — Converte um comando curl em código Dart com package:http.
  • cURL para Fetch — Converta um comando curl em uma chamada fetch() de JavaScript.
  • Analisador de URL — Decomponha uma URL em suas partes e liste os parâmetros de consulta.
  • Cliente de API — Envie requisições HTTP, monte cabeçalhos e parâmetros e inspecione respostas; salva as últimas 25.
  • Gerador de URL e UTM — Construa e valide URLs de produção codificadas com parâmetros UTM.
  • Testador de API da OpenAI — Crie, execute e copie requisições à API Chat Completions da OpenAI como cURL, Python e JavaScript.

Ver todas as ferramentas de Ferramentas de API (24) · Todas as ferramentas