클라이언트 쪽에서 로그아웃을 해도 리프레시 토큰만 db에 저장되어 있어 삭제해도 만료가 되지 않은 액세스 토큰으로 사이트를 돌아다닐 수 있어 로그인 시 액세스 토큰도 저장하고 로그아웃 요청 시 유저 액세스 토큰과 리프레시 토큰 둘 다 삭제합니다. 그리고 미들웨어에 액세스 토큰 만료 여부를 확인하고 받은 payload 값 중 유저 고유 번호를 뽑아서 db상에 해당 유저의 토큰 데이터가 있는지 검사하는 로직을 추가했습니다. 최종적으로 로그아웃시 클라이언트에 로컬에는 유효한 액세스 토큰이 있지만 미들웨어에서 검사했을 때 db상에는 해당 유저의 토큰 값이 없기 때문에 에러를 리턴합니다.
클라이언트 쪽에서 로그아웃을 해도 리프레시 토큰만 db에 저장되어 있어 삭제해도 만료가 되지 않은 액세스 토큰으로 사이트를 돌아다닐 수 있어 로그인 시 액세스 토큰도 저장하고 로그아웃 요청 시 유저 액세스 토큰과 리프레시 토큰 둘 다 삭제합니다. 그리고 미들웨어에 액세스 토큰 만료 여부를 확인하고 받은 payload 값 중 유저 고유 번호를 뽑아서 db상에 해당 유저의 토큰 데이터가 있는지 검사하는 로직을 추가했습니다. 최종적으로 로그아웃시 클라이언트에 로컬에는 유효한 액세스 토큰이 있지만 미들웨어에서 검사했을 때 db상에는 해당 유저의 토큰 값이 없기 때문에 에러를 리턴합니다.