HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🧚
[1기]최종 프로젝트 데브코스
/
🐳
[팀11] 모디
/
📅
회의록
/
회의록

회의록

날짜
Jan 15, 2022
장소
디스코드
참가자
  • SockJS 사용하기
  • 최초 handshaking 타이밍?
    • 연결 시간?
    • heartbeat 에 대해서 클라이언트에서 해야할일 찾아보기
      • 인터벌이나 타임아웃만 설정하면 될듯
  • 구독할떄 url
    • /api/chat/init
  • 데이터 전송 url
    • /api/chat/partyId
  • 인증, 인가 언제 할지
    • 연결 요청 시
  • 안읽은 메세지에 대한 처리
    • 채팅 페이지가 아닌 곳에서 응답이 왔을 때, 사용자에게 알림만 주고, 채팅방 카운트 증가
 
  • 데이터
    • 최초 채팅창 접속
      • 요청
      • 응답
    • 웹소켓
      • 요청(ws)
        • handshaking : JWT 토큰
        • chatting(publish) : JWT 토큰, partyId, message
          • JWT 토큰 : 헤더, partyId : path, message : body
          • 채팅 시, 채팅 내역 사이드에서 대기 중인 ui 보여주다가 서버에 반영되면 시간 띄우게
           
      • 응답(ws)
        • handshaking : 연결 응답
        • chatting : message_id, user_id, username, message, time,
        • { id: 1, userId: 3, username: "멋쟁이 호랑이", message: "메세지입니당", createdAt: "2022-01-19T08:05:19" }
    • 채팅 페이지가 아닌 곳을 보고 있을때 ws 프레임 → 메시지 알림 카운트만 올라감
    • pagenation(http)
      • 요청
      • 응답
       

      백앤드 로직
      1. /api/chat/init 으로 Connect 연결
      1. /api/chat/sub/partyId 로 Subscribe
      1. /api/chat/pub/PartyId 로 Send
          • 위의 3개의 단계 모두 인증, 인가 처리를 함
      1. Send가 들어오면 채팅 정보 저장 후 구독한 사람에게 전송