WebSocket 테스트 클라이언트

WebSocket에 연결해 메시지를 보내고, 송수신 메시지와 연결 상태, 종료 코드, 서버가 보낸 종료 사유를 확인하세요.

전체 ws:// 또는 wss:// 주소를 입력하세요. 연결을 선택한 경우에만 연결이 시작됩니다.
연결하려면 WebSocket 주소를 입력하세요.코드 닫기
문자 메시지를 하나 보냅니다. Ctrl+Enter 또는 Command+Enter를 눌러 전송하세요.
메시지 로그
보냄 0접수됨 0

연결하고 메시지를 보내 로그를 시작하세요.

이 페이지는 BroBroGo에 아무것도 업로드하거나 저장하지 않습니다. 주소와 메시지는 브라우저에서 선택한 WebSocket 서버로 직접 전송됩니다.

자주 묻는 질문

여기에서 어떤 WebSocket 데이터를 검사할 수 있나요?

브라우저에 표시되는 각 텍스트 또는 바이너리 메시지, 방향, 시간 및 크기, 최종 종료 코드, 이유 및 완전 종료 상태를 볼 수 있습니다. 브라우저 페이지는 네트워크 수준 조각이나 Ping 및 Pong 제어 프레임을 노출할 수 없습니다.

주소가 다른 곳에서는 작동하는데도 연결이 실패하는 이유는 무엇입니까?

보안 페이지에서는 브라우저에 wss://가 필요할 수 있습니다. 서버는 브라우저 연결과 페이지 출처도 허용해야 합니다. 이 클라이언트는 사용자 정의 핸드셰이크 헤더를 추가하거나, 인증서 오류를 우회하거나, 서버의 액세스 규칙을 재정의할 수 없습니다.

프로덕션 데이터나 민감한 데이터로 테스트할 수 있나요?

가능하면 합성 데이터를 사용하세요. 보내기 전에 이름, 계정 세부 정보, 법적 기록, 금융 정보 및 건강 정보를 제거하십시오. 메시지는 귀하가 선택한 서버로 이동하며, 해당 서버의 로깅 및 보관 규칙은 이 페이지에서 제어할 수 없습니다.

WebSocket 프로토콜과 실시간 통신의 이해

WebSocket은 단일 TCP 연결을 통해 양방향으로 동시에 데이터를 주고받을 수 있는 전이중(Full-Duplex) 통신 프로토콜입니다. HTTP와 달리 연결을 한 번 수립하면 클라이언트와 서버가 서로 원할 때 언제든 데이터를 전송할 수 있어 실시간 API 개발, 통합 테스트, 품질 보증(QA) 및 운영(Ops) 업무에 필수적으로 사용됩니다.

이 도구는 브라우저에서 직접 지정한 WebSocket 서버에 연결하여 텍스트 메시지를 송수신하고, 연결 상태 변화와 서버의 종료 코드 및 사유를 실시간으로 모니터링할 수 있는 테스트 클라이언트입니다.


연결 수명 주기와 상태 변화

WebSocket 연결은 클라이언트가 서버에 연결을 요청하면서 시작되며, 이 도구에서는 사용자가 직접 "연결하다"를 선택해야만 연결 프로세스가 시작됩니다.

  • 연결 시도: 연결이 시작되면 화면에 ‹address›에 연결하는 중…이라는 메시지가 표시됩니다.
  • 연결 성공: 연결이 성공적으로 열리면 ‹address›에 연결되었습니다.라는 이벤트가 로그에 기록되며, 이때부터 메시지 송수신이 가능해집니다.
  • 연결 시간 초과: 만약 서버가 10초 내에 연결을 열지 못하면 서버가 10초 내에 연결을 열지 못했습니다.라는 오류 메시지가 출력됩니다.
  • 연결 실패: 주소 오류, 인증서 문제, 서버 오프라인 또는 브라우저 보안 규칙 위반 등으로 연결이 실패하면 연결에 실패했습니다. 주소, 인증서, 서버 가용성 및 브라우저 액세스 규칙을 확인하세요.라는 안내가 표시됩니다.

주소 체계와 보안 프로토콜 (ws://wss://)

WebSocket은 일반 웹 프로토콜과 유사하게 암호화되지 않은 연결과 암호화된 보안 연결을 지원합니다.

  • ws://: 암호화되지 않은 일반 WebSocket 연결입니다.
  • wss://: TLS/SSL 암호화가 적용된 보안 WebSocket 연결입니다. 보안 웹페이지(HTTPS) 내에서 작동하는 브라우저 환경에서는 보안 정책상 반드시 wss:// 주소를 사용해야 할 수 있습니다.

이 도구는 오직 ws://wss:// 스키마만 지원합니다. 만약 다른 프로토콜 스키마를 입력하면 ws:// 또는 wss:// 주소를 사용하세요.라는 경고가 표시됩니다. 또한, 입력하는 주소는 반드시 wss://example.com/socket과 같이 완전한 형태여야 하며, 그렇지 않으면 wss://example.com/socket와 같은 완전한 WebSocket 주소를 입력하세요.라는 메시지가 나타납니다. 입력 가능한 주소의 최대 길이는 2,048자이며, 이를 초과하면 주소가 유난히 길어요. 2,048 문자 아래에 유지하세요.라는 제한 경고가 발생합니다.


메시지 송수신 및 데이터 형식

연결이 수립된 상태에서 텍스트 메시지를 작성하여 서버로 전송할 수 있습니다. 메시지를 전송하려면 Ctrl+Enter 또는 Command+Enter를 누르거나 전송 버튼을 클릭합니다. 연결되지 않은 상태에서 메시지 전송을 시도하면 메시지를 보내기 전에 연결하세요.라는 경고가 표시됩니다.

  • 텍스트 메시지: 한 번에 하나의 텍스트 메시지를 보낼 수 있으며, 최대 길이는 100,000자로 제한됩니다. 이를 초과하면 그 메시지는 비정상적으로 큽니다. 100,000 문자 아래에 유지하세요.라는 오류가 표시됩니다.
  • 바이너리 메시지: 서버로부터 수신한 이진 데이터는 바이너리 메시지로 분류되며, 해당 데이터의 크기가 바이트 단위로 로그에 표시됩니다.

메시지 로그 관리 및 브라우저 제한 사항

도구의 메시지 로그는 송수신된 모든 내역을 시간 순서대로 기록합니다. 로그에는 메시지 방향에 따라 보냄 또는 접수됨 상태가 표시되며, 데이터 유형에 따라 텍스트 또는 바이너리 메시지로 구분됩니다.

  • 로그 크기 제한: 브라우저의 성능 저하를 막고 응답성을 유지하기 위해 메시지 로그는 최대 500개까지만 보관됩니다. 이 한도를 초과하면 ‹count› 이 페이지의 응답성을 유지하기 위해 이전 로그 항목이 제거되었습니다.라는 안내와 함께 오래된 로그가 자동으로 삭제됩니다.
  • 개별 메시지 길이 제한: 개별 로그 항목은 최대 20,000자까지만 화면에 표시됩니다. 이를 초과하는 긴 메시지는 일부 내용이 생략되며 ‹count› 이 미리보기에는 더 많은 문자가 숨겨져 있습니다.라는 문구와 함께 잘려 보입니다.
  • 로그 지우기: "로그 지우기"를 선택하면 화면에 표시된 로그 항목만 초기화되며, 현재 유지되고 있는 WebSocket 연결이 끊어지거나 누적 송수신 카운트가 초기화되지는 않습니다.

연결 종료 코드 및 사유 분석

WebSocket 연결이 닫힐 때, 클라이언트는 서버가 전달한 종료 상태 정보를 로그에 기록합니다. 연결이 종료되면 ‹code›로 연결이 종료되었습니다. 또는 코드 ‹code›(‹clean›)로 종료되었습니다. 이유: ‹reason› 형태로 상세 정보가 표시됩니다.

  • 종료 코드 (Close Code): 연결이 종료된 원인을 나타내는 표준 숫자 코드입니다.
  • 종료 상태: 연결이 정상적으로 정리되었는지 여부에 따라 깨끗한 또는 깨끗하지 않다 상태로 구분되어 표시됩니다.
  • 종료 사유 (Reason): 서버가 연결을 닫으면서 전달한 구체적인 텍스트 설명입니다. 만약 서버가 별도의 사유를 제공하지 않았다면 이유가 제공되지 않음으로 표시됩니다.

개인정보 보호 및 데이터 처리 원칙

이 도구는 사용자의 프라이버시를 최우선으로 작동합니다. 입력한 WebSocket 주소와 송수신 메시지를 포함한 모든 데이터는 BroBroGo 서버에 업로드되거나 저장되지 않습니다. 모든 데이터 처리와 네트워크 통신은 전적으로 사용자의 웹 브라우저 내부에서 직접 실행되며, 지정한 WebSocket 서버로 직접 전송됩니다.


자주 묻는 질문 (FAQ)

Q: 여기에서 어떤 WebSocket 데이터를 검사할 수 있나요?
A: 브라우저에 표시되는 각 텍스트 또는 바이너리 메시지, 방향, 시간 및 크기, 최종 종료 코드, 이유 및 완전 종료 상태를 볼 수 있습니다. 브라우저 페이지는 네트워크 수준 조각이나 Ping 및 Pong 제어 프레임을 노출할 수 없습니다.

Q: 주소가 다른 곳에서는 작동하는데도 연결이 실패하는 이유는 무엇입니까?
A: 보안 페이지에서는 브라우저에 wss://가 필요할 수 있습니다. 서버는 브라우저 연결과 페이지 출처도 허용해야 합니다. 이 클라이언트는 사용자 정의 핸드셰이크 헤더를 추가하거나, 인증서 오류를 우회하거나, 서버의 액세스 규칙을 재정의할 수 없습니다.

Q: 프로덕션 데이터나 민감한 데이터로 테스트할 수 있나요?
A: 가능하면 합성 데이터를 사용하세요. 보내기 전에 이름, 계정 세부 정보, 법적 기록, 금융 정보 및 건강 정보를 제거하십시오. 메시지는 귀하가 선택한 서버로 이동하며, 해당 서버의 로깅 및 보관 규칙은 이 페이지에서 제어할 수 없습니다.