Skip to content

HAR export

Click Export HAR in the captures view header. A save dialog opens; pick a location and ProxyPro writes a .har file.

The HAR format is supported by:

  • Chrome DevTools — Network panel → right-click → Import HAR file
  • Firefox DevTools — Network panel → cog → Import HAR
  • Charles — File → Import Session
  • Various third-party HAR viewers (HAR Analyzer, etc.)

What’s exported

Flow kindExported?Notes
HTTP/1.1Full request + response, headers, body
HTTP/2Treated as h1-like in HAR (the spec predates h2)
WebSocketNo canonical HAR mapping; flow appears with _proxypro.kind = 'websocket'
gRPCSame

Per-flow metadata we add (under HAR’s _proxypro extension):

  • flowId — stable across captures
  • kind — the original Flow.kind so external tools can preserve our classification

Body encoding

  • Text bodies (UTF-8 decodable, no excessive control chars) — exported inline as entry.response.content.text.
  • Binary bodies — base64-encoded with entry.response.content.encoding = "base64". Compatible with all major HAR viewers.

Bodies bigger than the engine’s 64KiB inline cap appear as empty content with the correct size. P06.5 will wire on-demand body fetch into the export.

What’s not exported

  • Bodies parked in the LRU (over 64KiB) — empty in v0.1.0 HAR. P06.5 fetches them.
  • Request timing breakdown — we only have start, request_done, response_done. HAR’s timings.wait is approximated.
  • Cookies as structured fields — HAR’s cookies array is empty; the raw Cookie: / Set-Cookie: headers are present so most viewers display them anyway.

Privacy

Sharing tip

For sharing a single flow with a colleague:

  1. Right-click the flow → (planned: “Copy as HAR entry”)
  2. Paste into a private Slack DM or gist.

For now: export the whole session and tell them which flow ID matters.

HAR import

Not yet — P06.5 reads a .har into an offline read-only session.