Ir para o conteúdo

Conversor HAR para curl

Transforme cada requisição de um ficheiro HAR exportado num comando curl executável.

Entrada

Conversor HAR para curl

Exporte um ficheiro HAR do painel de Rede das Ferramentas de Desenvolvedor do seu navegador e esta ferramenta transforma cada requisição no seu interior num comando curl que pode colar diretamente num terminal. Foi criada para reproduzir um bug fora do navegador, partilhar uma requisição com um colega, ou escrever scripts de uma chamada que capturou primeiro navegando por um site.

Filtre as requisições antes de converter: reduza por domínio para isolar uma API, por método para extrair apenas os POSTs, ou por tipo de conteúdo para apanhar apenas as trocas de JSON. O ruído do navegador — User-Agent, Accept, Sec-Fetch-* e cabeçalhos semelhantes — é removido por padrão, pois raramente importa para repetir uma chamada, e uma caixa de verificação traz-o de volta. Os cookies também são excluídos por padrão, já que um cookie de sessão capturado geralmente está expirado no momento em que reutiliza o comando; os cabeçalhos de autenticação têm o seu próprio interruptor. Os corpos anexam-se com --data-raw para que JSON com aspas incorporadas sobreviva intacto, ou mude para --data para o próprio escape do curl. Adicione --compressed ou --location quando o alvo espera gzip ou segue redirecionamentos, e quebre comandos longos em múltiplas linhas para melhor legibilidade.

Prefere algo que não seja curl? As mesmas requisições filtradas podem surgir como chamadas de JavaScript fetch() para um script ou consola do navegador, ou como comandos HTTPie para a sua sintaxe amigável de header:value. Um ficheiro HAR com dezenas de entradas produz um bloco de comando por cada requisição correspondente, separado por uma linha em branco, para que possa copiar o lote inteiro ou escolher o que precisa.

Tudo acontece no seu navegador — o ficheiro HAR, que pode conter corpos completos de requisição e resposta, cookies e tokens de autenticação, nunca é carregado em lado nenhum. Copie o resultado, descarregue-o como um ficheiro .txt, ou envie-o para outra ferramenta para continuar a trabalhar.

FAQ

O que é um ficheiro HAR?
HAR (HTTP Archive) é o formato JSON que os navegadores usam para exportar atividade de rede — no Chrome ou Firefox DevTools, abra o separador de Rede, clique com o botão direito numa requisição (ou selecione tudo) e escolha "Guardar tudo como HAR".
Por que é que cookies e cabeçalhos do navegador são deixados de fora por padrão?
Um cookie de sessão capturado geralmente está expirado ou é sensível no momento em que reutiliza o comando, e cabeçalhos como User-Agent ou Sec-Fetch-* raramente afetam se a requisição tem sucesso. Ative novamente um com a opção correspondente.
Lida com requisições sem corpo, como requisições GET?
Sim. Requisições sem um bloco postData geram um comando curl simples sem a flag --data, e GET não recebe um -X GET desnecessário.
Posso gerar algo que não seja um comando curl?
Sim. Mude o formato de saída para fetch() para um snippet de JavaScript ou HTTPie para a sua sintaxe amigável de header:value, usando os mesmos filtros e regras de cabeçalhos.
O meu ficheiro HAR é carregado em algum lado?
Não. O ficheiro é analisado e convertido completamente no seu navegador — incluindo qualquer corpo, cookies ou tokens que contenha — e nunca sai do seu dispositivo.