Wat is het HAR-bestandsformaat?
Een .har-bestand - kort voor HTTP Archive - is een op JSON gebaseerd logboek dat elk HTTP-verzoek en -antwoord registreert dat tijdens een browsersessie wordt uitgewisseld. Browsers, proxy's en tools voor prestatiebewaking exporteren .har-bestanden zodat ontwikkelaars en support-engineers netwerkactiviteit offline kunnen herhalen, inspecteren en analyseren.
Het formaat ontstond rond 2007 als het exportformaat van het Net-paneel van Firebug en werd later geformaliseerd in een W3C Editor's Draft in 2012. HAR 1.2 is de versie die tegenwoordig door alle grote browsers wordt geschreven: Chrome, Edge, Firefox en Safari bevatten allemaal een optie Alles opslaan als HAR in hun DevTools Netwerk-tabblad.
Intern is een .har-bestand een enkel JSON-object met één sleutel op het hoogste niveau - log - die het volgende bevat:
version- altijd1.2in moderne exports (oudere tools schreven1.1)pages[]- één vermelding per paginalading, met algemene laadtijdenentries[]- één vermelding per HTTP-verzoek/antwoord-paar, inclusief URL, methode, statuscode, headers, cookies, geposte formuliergegevens en timings per fase (DNS-lookup, TCP-verbinding, TLS-handshake, verzenden, wachten, ontvangen)
Omdat .har-bestanden dit alles opslaan als platte UTF-8-tekst, kunnen ze gevoelige gegevens bevatten zoals sessiecookies, autorisatietokens en volledige antwoordteksten. Behandel ze als inloggegevens voordat u ze openbaar deelt of bij een supportticket voegt.
Supportteams bij diensten als Microsoft 365, Okta, Zendesk en Cloudflare vragen gebruikers regelmatig om een .har-bestand op te nemen en bij te voegen om te helpen bij het diagnosticeren van inlogfouten, trage paginaladingen en API-fouten. Beveiligingsonderzoekers laden .har-exports ook in tools zoals Fiddler of Wireshark om vastgelegde sessies te inspecteren en te herhalen.
Bestanden groeien snel: een eenvoudige paginalading kan 200 KB-2 MB produceren; het opnemen van een complexe sessie gedurende enkele minuten kan de 100 MB overschrijden. Het formaat heeft geen ingebouwde compressie, hoewel .har-bestanden routinematig extern worden ge-gzipped voor opslag of overdracht. Elke teksteditor kan ze openen - aangezien het platte JSON is - en speciale analyzers zoals de Google Admin Toolbox HAR Analyzer presenteren de gegevens als interactieve watervaltabellen van verzoeken en antwoorden.
Beveiliging & veiligheid
RISICO: HIGHHet gevaar van een HAR is niet malware maar BLOOTSTELLING. Een HAR legt alles vast wat de browser heeft verzonden en ontvangen in duidelijke tekst: sessiecookies, OAuth/bearer-tokens, API-sleutels, CSRF-tokens, volledige POST-teksten en soms getypte wachtwoorden. Iedereen die het bestand verkrijgt, kan vaak de geauthenticeerde sessie van de gebruiker herhalen. Incidenten met een hoog profiel (bijv. de inbreuk op het Okta-support-systeem in 2023, waarbij gestolen HAR-bestanden sessietokens bevatten) maken dit concreet. Voordat u een HAR deelt: genereer deze indien mogelijk ZONDER antwoordinhoud en haal hem door een opschoontool (bijv. Cloudflare/Google „HAR sanitizer” of de har-sanitizer tool) om cookies, Authorization-headers en tokens te verwijderen. Plaats nooit een onbewerkte HAR in een openbaar ticket, forum of chat. Het bestand zelf wordt niet uitgevoerd, dus het openen om het te LEZEN is veilig.
Formaatdetails
in een notendop- Resource Interchange Audio (verouderd .HAR) - Een paar oude spellen uit het DOS-tijdperk gebruikten .har voor verpakte audio-/resource-archieven; niet gerelateerd aan HTTP Archive.
Programma's die HAR-bestanden openen
Technische details
diepe specificaties| Containerformaat | JSON (platte tekst, UTF-8) |
| MIME-type | application/json; ook geregistreerd als application/har+json |
| Bestandshandtekening | Geen - geïdentificeerd door JSON-structuur; bestand begint bijna altijd met {"log":{"version":"1.2" |
| Intern versieveld | log.version veld: „1.2” in alle moderne exports; oudere tools schreven „1.1” |
| Schema op het hoogste niveau | {log:{version, creator, browser, pages[], entries[]}} - één entries[] item per HTTP-verzoek/antwoord-paar |
| Timingvelden per vermelding | Resolutie in milliseconden per fase: dns, connect, ssl, send, wait (TTFB), receive - maakt watervaldiagramanalyse mogelijk |
| Verwerking van binaire inhoud | Binaire antwoordteksten zijn base64-gecodeerd binnen het JSON-tekstveld |
| Compressie | Geen ingebouwd; gewoonlijk extern ge-gzipped als .har.gz voor opslag of overdracht |
| Privacygevoeligheid | Hoog - slaat cookies, autorisatieheaders, auth-tokens en volledige verzoek-/antwoordteksten op in duidelijke tekst |
| Typische bestandsgrootte | 200 KB - 50 MB per sessie; mediarijke of uitgebreide sessies kunnen de 100 MB overschrijden |
| Platformondersteuning | Geëxporteerd door Chrome, Edge, Firefox en Safari DevTools; geïmporteerd door Charles Proxy, Fiddler, Proxyman en anderen |
| Primaire use-cases | Prestatieanalyse, web-debugging, supportdiagnostiek (Microsoft 365, Okta, Zendesk, Cloudflare) en auditing van HTTP-verkeer |
| Limiet aantal vermeldingen | Onbegrensd - de entries-array groeit met elk vastgelegd verzoek; alleen beperkt door beschikbaar geheugen |
| Uitgebracht | 2007 (HAR 1.1 draft, Firebug Net panel); W3C draft 'HTTP Archive (HAR) format' 2012 |
| Laatste versie | HAR 1.2 (the version recorded inside every modern export's log.version field) |
| Open standaard | Ja · royaltyvrij |
| Specificatie | www.softwareishard.com |
HAR conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over HAR-bestanden.