Redis로 로그아웃 토큰 방식에서 로그아웃 하기 위해서는 토큰의 만료시간을 만료시키거나 토큰 자체를 삭제해야 한다. 하지만 토큰의 만료시간은 직접 조작할 수가 없다. 실제로 로그인을 유지시키는 에세스 토큰을 서버가 가지고 있지 않기 때문이다. 토큰 자체를 삭제하는 방법도 불가능하다. 만약 요청에서 받아온 토큰을 삭제하더라도 클라이언트 입장에서는 그대로 들고있는 것이기 때문에 토큰을 삭제하는 의미가 없다. 그래서 다른 방법을 사용한다. 사용자가 로그아웃 요청을 보낸다. 이 때 요청헤더에서 에세스 토큰을 찾아서 넘겨준다. @DeleteMapping("/logout") public void logout(HttpServletRequest request) { authService.logout(request.ge..
이번 포스팅에서는 토큰을 발급하고, 가져오는 방법을 다르게 해보겠다. 모든 코드는 깃허브에 있으니 참고해주세요. 프론트가 좋아하는 방식 프론트가 좋아한다는 방식이 무슨 말일까 ? 기존 토큰 주고받기 방식이라고 한다면, 클라이언트가 로그인을 한다. 서버가 토큰을 발급해준다. 클라이언트는 이제 요청을 보낼 때 마다 토큰을 헤더에 넣어서 보낸다. 서버는 요청에 담겨있는 헤더를 찾아서 검사한다. 만족하는 응답을 한다. 정도로 되겠다. 여기서 중요하게 볼 점은 로그인 이후 요청을 보낼 때 프론트에서 직접 토큰을 헤더에 넣어주는 작업을 해야 한다. 하지만 만약 직접 헤더에 넣어주는 작업을 해주지 않아도 요청할 때 자동으로 토큰을 넣어서 보내준다면 어떨까 ? 프론트가 해야할 일이 줄어드니 좋아할 것이다. 토큰을 쿠키..
- Total
- Today
- Yesterday