서비스 목록으로

Whistle

Whistle은 HTTP, HTTPS, HTTP/2, WebSocket 등의 프로토콜을 캡처할 수 있고 규칙으로 요청과 응답을 수정할 수 있는 크로스 플랫폼 네트워크 디버깅 프록시입니다. 데스크톱 클라이언트와 커맨드라인 버전, 두 가지로 제공됩니다.

Whistle 대안 보기
기여자:
einverne
수정 제안
최근 리뷰

대안 서비스

웹사이트 미리보기

기술 스택

아직 추가된 기술 스택이 없습니다. 로그인하고 추가 제안하기

Whistle은 네트워크 트래픽을 캡처하고, 확인하고, 수정하는 데 쓰는 크로스 플랫폼 네트워크 디버깅 프록시 도구입니다. 공식 사이트는 강력한 기능, 간편한 조작, 확장성, 크로스 플랫폼을 특징으로 내세웁니다.

주요 기능

  • 다중 프로토콜 프록시: HTTP, HTTPS, SOCKS, 리버스 프록시를 지원하며, 주요 네트워크 프로토콜의 트래픽을 가로채 수정할 수 있습니다.
  • 규칙 설정: 규칙을 설정해 요청과 응답을 수정합니다. 규칙 유형은 다음과 같습니다.
    • 로컬 파일 매핑 및 원격 주소 매핑
    • DNS 스푸핑(host) 및 업스트림 프록시 전달
    • 요청과 응답의 헤더, Cookie, Body 재작성
    • HTML, CSS, JS 삽입
    • 속도 제한 및 지연
  • 올인원 인터페이스: 웹 인터페이스 한 곳에서 패킷 캡처 확인(Network), 규칙 설정(Rules), Values, 플러그인 관리, 요청 생성(Composer), HTTPS 인증서 설정 등의 기능을 사용할 수 있습니다.
  • 내장 디버깅 도구: Weinre 같은 디버깅 도구와 Console/Log 기능이 내장되어 있습니다.
  • 플러그인 확장: 플러그인으로 기능을 확장할 수 있고, NPM 모듈로 다른 프로젝트에 통합할 수도 있습니다.
  • 모바일 디버깅: 공식 사이트 문서에 모바일 기기의 프록시 설정 방법이 안내되어 있습니다.

대상 사용자 및 사용 시나리오

주로 프론트엔드 및 클라이언트 개발자, 테스트 엔지니어, 백엔드 개발자를 대상으로 합니다. 이들은 API 요청을 확인하고, 운영 데이터를 모사하고, 응답 내용을 바꾸고, 운영 리소스를 로컬 파일로 연결하거나, 모바일 앱과 H5 페이지를 디버깅해야 하는 경우에 Whistle을 활용합니다.

설치 및 배포

공식 사이트는 두 가지 설치 방식을 제공합니다.

  1. 데스크톱 버전: macOS, Windows, 그리고 그래픽 인터페이스가 있는 Linux(Ubuntu, Fedora 등)에서 사용할 수 있습니다. 공식적으로는 Whistle 클라이언트(프로젝트 avwo/whistle-client) 사용을 권장합니다.
  2. 커맨드라인 버전: 그래픽 인터페이스가 없는 Linux 서버, Docker 컨테이너, 임베디드 시스템, IoT 기기 등에 적합합니다(프로젝트 avwo/whistle). 커맨드라인 버전은 Node.js 기반이며, 보통 npm으로 전역 설치한 뒤 실행합니다. 구체적인 절차는 GitHub 저장소의 README를 따르시기 바랍니다.

눈여겨볼 특징

  • 규칙 기반으로 동작하여 설정이 유연합니다. 규칙 문법은 어느 정도 학습이 필요하지만 트래픽을 정밀하게 제어할 수 있습니다.
  • 데스크톱 버전과 커맨드라인 버전이 함께 제공되어, 로컬에서 디버깅할 수도 있고 서버에 배포해 팀이 함께 사용할 수도 있습니다.
  • 프로젝트는 GitHub에서 호스팅되며, 공식 사이트에서 중국어와 영어 문서를 제공합니다.