WebSocket 재전송
WebSocket 재전송은 WebSocket 엔드포인트 테스트를 위한 재사용 가능한 세션을 만듭니다. 캡처된 핸드셰이크 정보로 다시 연결하고, 메시지를 편집하고, 새 프레임을 전송하고, 서버 응답을 관찰할 수 있습니다.
세션 만들기
WebSocket 재전송 세션은 두 가지 방법으로 만들 수 있습니다.
- WS / SSE 기록에서 캡처된 WebSocket 메시지를 마우스 오른쪽 버튼으로 클릭하고 WS 재전송으로 보내기를 선택합니다.
- WS 재전송을 열고
ws://또는wss://URL로 세션을 직접 만듭니다.
수동 세션에는 쿠키, 인가 토큰, 프로토콜 협상, 애플리케이션별 핸드셰이크 값을 위한 사용자 지정 헤더를 포함할 수 있습니다.
세션 설정
| 필드 | 설명 |
|---|---|
| 이름 | 사람이 알아보기 쉬운 세션 라벨. |
| URL | WebSocket 엔드포인트. URL은 ws:// 또는 wss://로 시작해야 합니다. |
| 헤더 | 연결 시 전송하는 선택적 핸드셰이크 헤더. |
URL이나 헤더를 변경하면 Ogma는 다음 연결을 열기 전에 세션을 저장합니다.
연결
세션을 선택하고 연결을 클릭합니다. 연결 상태는 소켓이 연결 해제됨, 연결 중, 열림, 닫는 중, 닫힘 중 어느 상태인지 표시합니다.
대상을 바꾸거나 핸드셰이크 정보를 수정하기 전에 연결 해제를 사용하세요. URL이나 헤더를 편집한 후 다시 연결하여 새 서버 경로나 인증된 컨텍스트를 테스트합니다.
연결은 WebSocket 핸드셰이크만 완료합니다. 많은 애플리케이션은 이후 실제 서비스 메시지를 받기 전에 인증 또는 초기화 프레임을 요구합니다. 캡처된 첫 클라이언트 메시지를 기준으로 사용하고, 확인 응답을 기다린 뒤 수정한 메시지를 보내세요. 캡처된 쿠키, 서명된 URL, 토큰은 만료되었을 수 있습니다.
메시지 전송
메시지 작성기에서 페이로드를 편집하여 선택한 세션으로 전송합니다. 텍스트 페이로드는 WebSocket 텍스트 프레임으로 전송됩니다.
16진수 바이트에는 바이너리 모드로 전환합니다. 캡처된 첫 WebSocket 메시지 재전송은 초기화를 다시 보내는 데 도움이 되며, 캡처된 송신 메시지 시퀀스 재전송은 캡처된 클라이언트 메시지를 순서대로 보냅니다. 시퀀스 전송이 애플리케이션 상태를 재현했다고 가정하지 말고 타임라인에서 응답을 확인하세요.
프로토콜 편집기는 일반 WebSocket과 관리형 GraphQL 모드(graphql-transport-ws 및 이전 graphql-ws)를 지원합니다. 대상이 사용하는 프로토콜을 선택하고 연결 매개변수를 입력하세요. 필요한 경우 원래 서브프로토콜 헤더를 유지하세요. 잘못된 프로토콜을 요청하면 업그레이드에 실패할 수 있습니다.
타임스탬프 갱신은 기본적으로 꺼져 있습니다. 새로운 타임스탬프가 필요한 서명되지 않은 요청에만 켜세요. 서명된 URL이나 페이로드를 변경하면 서명이 무효화될 수 있습니다. 자동 재연결은 연결 해제 후 다시 시도하지만 새 연결에서는 애플리케이션 수준 인증이 여전히 필요할 수 있습니다.
기록에서 보낸 캡처 메시지는 원래 페이로드를 시작점으로 유지하므로 한 번에 하나의 필드를 변경하여 동작을 비교할 수 있습니다.
메시지 타임라인
타임라인은 선택한 세션의 송수신 프레임을 기록합니다.
| 열 | 설명 |
|---|---|
| 방향 | 클라이언트가 보낸 프레임인지 서버에서 받은 프레임인지 표시합니다. |
| 옵코드 | text, binary, ping, pong, close 등의 프레임 유형. |
| 크기 | 페이로드 크기. |
| 시간 | Ogma가 프레임을 관찰한 시각. |
메시지를 선택하면 페이로드를 검사할 수 있습니다. JSON 페이로드는 가능한 경우 서식이 정리됩니다. 정확한 검토를 위해 원문도 계속 사용할 수 있습니다.
테스트 절차
- WS / SSE 기록에서 정상적인 WebSocket 통신 흐름을 캡처합니다.
- 주목할 클라이언트 메시지를 WS 재전송으로 보냅니다.
- 다시 연결하고 원래 메시지를 재전송하여 기준 동작을 확인합니다.
- 한 번에 하나의 필드, 토큰, ID 또는 명령을 변경합니다.
- 확인된 동작을 발견 사항에 기록하거나 메모에 남깁니다.
문제 해결
| 증상 | 확인할 내용 |
|---|---|
| 업그레이드 거부 또는 금지 | URL, Origin, 쿠키, 인가, 만료된 서명 쿼리 값. |
| 잘못되었거나 요청하지 않은 서브프로토콜 | 업그레이드 헤더를 캡처된 핸드셰이크 및 선택한 프로토콜 모드와 비교합니다. |
| 연결에 성공한 뒤 닫힘 | 시스템/닫기 메시지를 검사하고 필요한 초기화 또는 인증 프레임을 보냅니다. |
| 메시지는 전송되지만 유용한 응답이 없음 | 구독 ID, 이전 메시지, 인증, 애플리케이션 상태를 확인합니다. WebSocket 전송 계층은 브라우저 세션을 자동으로 재현하지 않습니다. |
MCP에서는 전용 WS 재전송 메시지 목록/읽기 및 연결 해제 도구를 사용합니다. 캡처 기록 도구는 다른 통신 기록을 읽습니다. MCP 도구 참조를 참조하세요.