Skip to content

[Feat] 웹소켓(STOMP) 클라이언트 초기 연동 #10

@Debuging-JunSeoPark

Description

@Debuging-JunSeoPark

기능 개요

웹소켓(STOMP) 클라이언트 초기 연동.
프론트엔드에서 로그인 후 자동 연결 / 재연결 / 구독/발행 준비까지 구현하여, 백엔드가 준비되면 즉시 메시지 송수신이 가능하도록 기반을 마련한다.


상세 설명

문제

  • 현재 로그인까지는 구현되어 있으나, 실시간 통신(웹소켓) 연결부가 없음.
  • 백엔드(Spring WebSocket + STOMP) 구현 전이라도 프론트에서 연결/상태 관리/구독·발행 API를 먼저 준비해야 후속 연동이 원활함.

필요성

  • 배포 시 서버 분리 예정이므로, 환경변수 기반 엔드포인트/프로토콜 분기(SockJS/native WS)와 자동 재연결 등 클라이언트 단 견고성 선구현 필요.
  • 채팅룸 컴포넌트에서 재사용 가능한 클라이언트 서비스 + Provider + 훅 구조가 요구됨.

예상 사용자 흐름/UI

  • 로그인 성공 → Access Token 확보
  • 앱이 STOMP로 자동 연결 시도(Authorization 헤더 포함)
  • 연결 상태 배지(UI)로 connecting/connected/disconnected/error 표시
  • 채팅룸 진입 시 규약 토픽 구독(/topic/rooms.{roomId}, /user/queue/rooms.{roomId}), 메시지 전송(/app/rooms.{roomId}.send) 버튼 동작

참고 사항

없음

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions