K
KRYFT Problem Bank
백엔드 보통 코딩

WebSocket 채팅 서버

WebSocket 기반 실시간 채팅

40분
85점
#3724

문제 설명

WebSocket을 사용하여 실시간 채팅 서버를 구현하세요.

기능 요구사항

  • 클라이언트 연결/해제 처리
  • 채팅방 입장/퇴장
  • 메시지 브로드캐스트
  • 귓속말 (1:1 메시지)
  • 타이핑 표시
  • 사용자 목록

메시지 프로토콜


// 클라이언트 -> 서버
{ type: "join", room: "general", username: "user1" }
{ type: "message", room: "general", content: "Hello!" }
{ type: "whisper", to: "user2", content: "Hi" }
{ type: "typing", room: "general", isTyping: true }

// 서버 -> 클라이언트
{ type: "user_joined", username: "user1" }
{ type: "message", from: "user1", content: "Hello!" }
{ type: "user_list", users: ["user1", "user2"] }

평가 기준

  • 연결 관리 정확성
  • 에러 핸들링
  • 확장성
실행 버튼을 눌러 코드를 실행하세요.