O que é o formato de ficheiro HAR?
Um arquivo .har - abreviação de HTTP Archive - é um log baseado em JSON que registra cada requisição e resposta HTTP trocada durante uma sessão de navegador. Navegadores, proxies e ferramentas de monitoramento de desempenho exportam arquivos .har para que desenvolvedores e engenheiros de suporte possam reproduzir, inspecionar e analisar a atividade de rede offline.
O formato surgiu por volta de 2007 como o formato de exportação do painel Net do Firebug e foi posteriormente formalizado em um W3C Editor's Draft em 2012. O HAR 1.2 é a versão gravada por todos os principais navegadores hoje: Chrome, Edge, Firefox e Safari incluem uma opção Save all as HAR em sua aba Network das DevTools.
Internamente, um arquivo .har é um único objeto JSON com uma chave de nível superior - log - contendo:
version- sempre1.2em exportações modernas (ferramentas mais antigas gravavam1.1)pages[]- uma entrada por carregamento de página, com o tempo geral de carregamentoentries[]- uma entrada por par de requisição/resposta HTTP, incluindo URL, método, código de status, cabeçalhos, cookies, dados de formulário postados e tempos por estágio (busca de DNS, conexão TCP, handshake TLS, envio, espera, recebimento)
Como os arquivos .har armazenam tudo isso como texto simples UTF-8, eles podem conter dados sensíveis, como cookies de sessão, tokens de autorização e corpos de resposta completos. Trate-os como credenciais antes de compartilhar publicamente ou anexar a um ticket de suporte.
Equipes de suporte em serviços como Microsoft 365, Okta, Zendesk e Cloudflare solicitam rotineiramente que os usuários gravem e anexem um arquivo .har para ajudar a diagnosticar falhas de login, carregamentos lentos de página e erros de API. Pesquisadores de segurança também carregam exportações .har em ferramentas como Fiddler ou Wireshark para inspecionar e reproduzir sessões capturadas.
Os arquivos crescem rapidamente: um carregamento de página simples pode produzir 200 KB-2 MB; gravar uma sessão complexa por vários minutos pode exceder 100 MB. O formato não possui compressão integrada, embora arquivos .har sejam rotineiramente compactados com gzip externamente para armazenamento ou transferência. Qualquer editor de texto pode abri-los - já que são JSON puro - e analisadores dedicados, como o Google Admin Toolbox HAR Analyzer, apresentam os dados como tabelas em cascata (waterfall) interativas de requisições e respostas.
Segurança e proteção
RISCO: HIGHO perigo de um HAR não é malware, mas EXPOSIÇÃO. Um HAR captura tudo o que o navegador enviou e recebeu em texto claro: cookies de sessão, tokens OAuth/bearer, chaves de API, tokens CSRF, corpos POST completos e, às vezes, senhas digitadas. Qualquer pessoa que obtenha o arquivo pode, muitas vezes, reproduzir a sessão autenticada do usuário. Incidentes de alto perfil (ex: a violação do sistema de suporte da Okta em 2023, onde arquivos HAR roubados continham tokens de sessão) tornam isso concreto. Antes de compartilhar um HAR: gere-o SEM conteúdo de resposta quando possível e passe-o por um sanitizador (ex: «HAR sanitizer» da Cloudflare/Google ou a ferramenta har-sanitizer) para remover cookies, cabeçalhos de Authorization e tokens. Nunca publique um HAR bruto em um ticket público, fórum ou chat. O arquivo em si não é executável, portanto, abrir um para LEITURA é seguro.
Detalhes do formato
em resumo- Resource Interchange Audio (legado .HAR) - Alguns jogos antigos da era DOS usavam .har para arquivos de áudio/recursos compactados; não relacionado ao HTTP Archive.
Programas que abrem arquivos HAR
Detalhes técnicos
especificação profunda| Formato de contêiner | JSON (texto simples, UTF-8) |
| Tipo MIME | application/json; também registrado como application/har+json |
| Assinatura do arquivo | Nenhuma - identificado pela estrutura JSON; o arquivo quase sempre começa com {"log":{"version":"1.2" |
| Campo de versão interna | campo log.version: «1.2» em todas as exportações modernas; ferramentas antigas gravavam «1.1» |
| Esquema de nível superior | {log:{version, creator, browser, pages[], entries[]}} - um item entries[] por par de requisição/resposta HTTP |
| Campos de tempo por entrada | Resolução em milissegundos por estágio: dns, connect, ssl, send, wait (TTFB), receive - permite análise de gráfico em cascata |
| Tratamento de conteúdo binário | Corpos de resposta binários são codificados em base64 dentro do campo de texto JSON |
| Compressão | Nenhuma integrada; comumente compactado com gzip externamente como .har.gz para armazenamento ou transferência |
| Sensibilidade de privacidade | Alta - armazena cookies, cabeçalhos de autorização, tokens de autenticação e corpos completos de requisição/resposta em texto claro |
| Tamanho típico de arquivo | 200 KB - 50 MB por sessão; sessões com muita mídia ou estendidas podem exceder 100 MB |
| Suporte de plataforma | Exportado pelas DevTools do Chrome, Edge, Firefox e Safari; importado pelo Charles Proxy, Fiddler, Proxyman e outros |
| Principais casos de uso | Análise de desempenho, depuração web, diagnósticos de suporte (Microsoft 365, Okta, Zendesk, Cloudflare) e auditoria de tráfego HTTP |
| Limite de contagem de entradas | Ilimitado - a matriz de entradas cresce com cada requisição capturada; limitada apenas pela memória disponível |
| Lançado | 2007 (HAR 1.1 draft, Firebug Net panel); W3C draft 'HTTP Archive (HAR) format' 2012 |
| Versão mais recente | HAR 1.2 (the version recorded inside every modern export's log.version field) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | www.softwareishard.com |
Conversões de HAR
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos HAR.