[발자국] 웹 프로젝트 (tripmark.co.kr)

[웹 프로젝트] 피드백 적용하기 4 - JWT 토큰 관리 확인

남건욱 2025. 6. 2. 20:24

목차

    반응형

    문제 정의

    피드백 4.
    
    로그인후 창을 두개띄우고 로그아웃시 하나의 창은 채팅이 계속쳐지네요.
    
    개발자모드보니 로그아웃시에 쿠키가없어지던데 프론트에서 jwt토큰을 다루고있는건가요?

     

     

    해결 방향

    토큰 검증 로직 추가
    - 로그아웃해도 기존 WebSocket 연결이 끊기지 않아, 다른 탭에서 여전히 채팅 메시지를 보낼 수 있었음
      서버에서 WebSocket 세션을 즉시 종료하기 복잡하므로, 메시지 전송 시마다 클라이언트와 서버에서
      JWT 유효성을 확인하도록 수정

     

    구현 상세

    토큰 검증 로직 추가

     

    탭 두 개로 채팅방을 켰다. 그 뒤 한쪽에서 로그아웃하고 한쪽에서는 채팅을 쳐봤다. 근데 채팅이 전송된다..

    그래서 다른 것도 테스트해 봤다. 게시글 작성버튼을 눌렀을 때 로그인이 안되어있다면 작성페이지로 넘어가지 않는다. 이 테스트에서는 정상적으로 작성페이지로 넘어가지 않았다.

     

    따라서 토큰을 제거하거나 로그아웃을 해도 웹소켓 연결이 끊기지 않아서 발생하는 것 같았다.  그래서 클라이언트상에서 메시지를 보낼 때마다 토큰을 체크한 뒤 전송이 되도록 수정했다. 웹소켓 세션을 끊기에는 복잡해질 것 같아서 메시지를 전송할 때마다 토큰검증을 하도록 수정했다.

     

     

    그 결과 다시 시도했을때 한 곳에서 로그아웃시 정상적으로 에러를 띄우고 메인페이지로 돌아간다. 

     

     

     

    서버 주소

    https://tripmark.co.kr/

     

    발자국 - 여행 커뮤니티

    당신의 발자국으로 채워가는 여행플랫폼

    tripmark.co.kr

     

    테스트 계정 1

    ID: test1@gmail.com

    PW: !test1234

     

    테스트 계정 2

    ID: test2@gmail.com

    PW: !test1234

     

    피드백은 항상 감사히 받겠습니다.

    OKKY(개발자 지식공유 플랫폼)에서 피드백 받은 내용입니다.

    https://okky.kr/

     

    OKKY - All That Developer

    OKKY는 국내 최대 개발자 지식공유 플랫폼입니다. 개발자에게 필요한 기술 Q&A, 아티클, 커리어, 네트워킹, 취업, IT행사를 지원합니다

    okky.kr

     

    반응형
    프로필사진

    남건욱's 공부기록