HAR 파일 뷰어

HAR은 이 브라우저에만 보관됩니다. 업로드되거나 Livewire를 통해 전송되거나 URL에 포함되지 않습니다.

HAR 파일에는 비밀번호, 세션 쿠키, 인증 토큰, 쿼리 값 및 응답 본문이 포함될 수 있습니다. 가능하면 정제된 캡처를 사용하세요.

단계 1 / 3HAR 파일 뷰어

HAR 캡처 열기

HAR 파일 읽는 중…

HTTP Archive를 업로드하지 않고 검사하세요. 브라우저 기반 HAR 뷰어가 요청, 상태 코드, 전송 크기, 호스트, 타이밍 단계를 요약하고 개별 항목의 검색과 검사를 지원합니다. 민감한 헤더와 모든 URL 쿼리 값은 기본적으로 가려집니다. 최대 20 MiB 또는 25,000개 요청의 캡처를 처리하며 작업 데이터는 브라우저 안에만 보관됩니다.

작동 방식

  1. 1

    캡처 열기

    .har 또는 .json 파일을 선택하거나 끌어다 놓으세요. 브라우저가 HAR 로그와 요청 수 제한을 로컬에서 검증합니다.

  2. 2

    요청 찾기

    개요를 확인하고 메서드, 마스킹된 URL, 상태 또는 콘텐츠 유형으로 검색한 뒤 필터를 조합하세요.

  3. 3

    검사 또는 내보내기

    요청 및 응답 헤더와 타이밍 단계를 살펴보고 정제된 CSV 또는 JSON 요약을 다운로드하세요.

HAR 파일에 포함되는 정보

HAR는 HTTP Archive의 약자로, 브라우저 네트워크 로그를 교환하는 JSON 기반 형식입니다. 페이지가 보낸 요청, 받은 응답, 헤더 메타데이터, 크기, 타이밍 세부 정보가 담깁니다. Chrome DevTools는 Network 기능 참고 문서에서 정제된 HAR와 민감한 데이터가 포함된 HAR를 저장하는 방법을 안내합니다. Firefox는 Network Monitor 요청 목록에서 Save All as HARImport HAR를 제공합니다. 필드 구조는 HAR 1.2 사양을 따릅니다.

이 뷰어는 log.entries를 읽습니다. 요청과 응답이 모두 들어 있지 않은 잘못된 항목은 추측하지 않고 건너뜁니다. 선택 필드는 없을 수 있으므로 기록되지 않은 크기, 시각 또는 단계는 사용할 수 없는 상태로 둡니다. 상태 코드를 지어내거나 알 수 없는 소요 시간을 0으로 바꾸지 않습니다.

개요 읽는 법

개요는 알려진 사실과 기록되지 않은 값을 구분합니다. 전송 크기는 브라우저 전용 _transferSize가 유효한 0 이상의 숫자일 때 사용합니다. 그렇지 않으면 두 값이 모두 알려진 경우에만 headersSize + bodySize를 사용합니다. 압축, 헤더, 캐시, 프로토콜 오버헤드 때문에 수치가 달라질 수 있으므로 응답 콘텐츠 크기를 전송 바이트로 간주하지 않습니다.

필드 의미 중요한 제한 사항
요청 log.entries에서 사용할 수 있는 항목 잘못된 항목은 건너뛴 건수로 알림
전송됨 알려진 전송 크기의 합계 알 수 없는 크기는 별도로 집계
워터폴 범위 가장 이른 유효 시작 시각부터 마지막으로 기록된 종료까지 시작 시각이 없으면 정확한 위치를 정할 수 없음
상태 그룹 기록된 2xx, 3xx, 4xx, 5xx 응답 상태가 없으면 사용할 수 없음으로 유지
호스트 파싱된 고유 호스트 이름 잘못되거나 상대적인 URL에는 호스트가 없을 수 있음

검색은 대소문자를 구분하지 않는 리터럴 문자열 검색입니다. [.* 같은 문자를 정규식으로 해석하지 않습니다. 필터는 보이는 요청 목록과 내보낼 행만 바꾸며 캡처 전체 합계는 바꾸지 않습니다.

타이밍 처리 방식

HAR는 보통 blocked, dns, connect, ssl, send, wait, receive를 밀리초 단위로 기록합니다. -1은 해당 단계를 사용할 수 없다는 뜻입니다. -1보다 작은 값, 숫자가 아닌 값, 유한하지 않은 숫자도 사용할 수 없는 것으로 처리합니다.

ssl은 일반적으로 connect에 포함되며 그 뒤에 더하는 별도 단계가 아닙니다. 따라서 대체 소요 시간은 blocked, DNS, connect, send, wait, receive를 합산하되 SSL을 다시 더하지 않습니다. 보고된 전체 시간과 사용 가능한 단계의 합이 크게 다르면 캡처를 조용히 수정하지 않고 보고된 값을 유지하면서 경고를 표시합니다. 경과 시간은 고정된 시간 방향을 가지므로 아랍어 페이지에서도 워터폴은 항상 왼쪽에서 오른쪽으로 표시됩니다.

개인정보 보호와 안전한 처리

HAR에는 로그인 세션을 탈취할 수 있을 만큼 민감한 정보가 담길 수 있습니다. Chrome도 정제된 내보내기와 Cookie, Set-Cookie, Authorization 데이터가 포함된 내보내기를 명확히 구분합니다. 이 뷰어는 해당 헤더, 프록시 인증, API 키와 유사한 헤더, 모든 URL 쿼리 값을 기본적으로 마스킹합니다. 헤더 공개는 사용자가 명시적으로 선택하는 로컬 동작입니다. 가져온 문자열은 텍스트로 렌더링되므로 URL이나 헤더에 든 마크업은 실행되지 않습니다.

작업 모델에는 요청 본문, 응답 본문, postData, 쿠키 배열을 보관하지 않습니다. 다단계 흐름에서는 크기가 제한된 본문 없는 프로젝트를 이 브라우저 탭의 IndexedDB에 저장하고, 내용을 드러내지 않는 탭 마커로 참조하며, 2시간 뒤 만료시킵니다. 요청을 재전송하거나 캡처된 호스트에 연결하거나 HAR를 Livewire로 보내지 않습니다. 처음부터 다시 시작하면 저장된 프로젝트가 삭제됩니다.

내보내기는 원본 캡처의 복사본이 아니라 요약입니다. URL 쿼리 값은 계속 마스킹되고 헤더 값과 본문은 제외되며, CSV 셀은 스프레드시트 수식 실행을 막도록 보호됩니다. 현재 필터와 일치하는 요청 행만 포함됩니다. 그래도 공유 전에는 반드시 검토하세요. 호스트 이름, 경로, 상태 패턴만으로도 내부 시스템이 드러날 수 있습니다.

실용적인 작업 순서

  1. 가능하면 브라우저의 정제된 HAR 내보내기를 사용합니다.
  2. 문제가 발생한 페이지 흐름만 재현한 뒤 기록을 중지합니다.
  3. 여기서 캡처를 열고 상태, 호스트 경로 또는 콘텐츠 유형으로 필터링합니다.
  4. 긴 대기 시간을 DNS, 연결, 수신 시간과 비교하되 브라우저나 프록시가 일부 단계를 생략할 수 있음을 기억합니다.
  5. 진단에 필요한 정제된 요약만 공유하고, 받는 사람과 전송 채널을 신뢰할 수 없다면 원본 캡처를 공유하지 않습니다.

자주 묻는 질문

아니요. 파싱, 필터링, 세부 정보 검사, 내보내기는 브라우저 안에서 이루어집니다. 파일은 Livewire를 통해 전송되거나 페이지 URL에 포함되지 않습니다.

HAR 캡처에는 세션 쿠키, Bearer 토큰, API 키, 민감한 쿼리 매개변수가 포함될 수 있습니다. 우발적인 노출을 줄이기 위해 모든 쿼리 값과 인식된 보안 관련 헤더를 기본적으로 숨깁니다.

브라우저와 캡처 도구가 모든 선택 HAR 필드를 항상 기록하지는 않습니다. 뷰어는 추측한 0을 표시하지 않고 그 불확실성을 그대로 유지합니다.

대개 그렇지 않습니다. HAR는 SSL을 연결 단계의 일부로 기록하므로 대체 합계에서 두 번 더하지 않습니다.

아니요. 캡처된 호스트에 연결하거나 요청을 다시 보내지 않도록 설계되었습니다. 네트워크 동작을 재현해야 한다면 권한이 있는 환경에서 DevTools를 사용하세요.

관련 도구