- JWT 방식에서는 세션을 STATELESS 상태로 관리한다!
- DB연결 완료
컨트롤러에 @RequestBody를 붙여줘야지 JSON형태로 data를 보낼 수 있다. Controller 메서드 인자에 @RequestBody 어노테이션 설정을 하지 않으면 Form-Data 형식으로 받도록 설정되어있다.
-
에러가 뜨게된다.
-
이유는 우리의 LoginFilter에서 MIME 타입을 form-data 형식으로 받도록 구현이 되어 있어서 그렇다.
-
이렇게 admin이 뜨게된다.
- 응답코드 200과 함께 응답헤더에 Authorization이라는 키값에 대한 JWT값을 확인할 수 있다.
- 발급 된 Authorization 키를 Header에 넣어준다.
- 그 후 admin 권한이 있어야지 접근할 수 있는 경로에 접근해보면
- 이렇게 정상적으로 접근 가능한것을 볼 수 있다.
- 헤더에 토큰을 해제하고 요청을 보내보면
- 403이 뜨면서 접근이 되지 않는다.
- 유저 권한을 가진 회원의 경우
- main 페이지에는 접근이 가능하지만
- admin 페이지 접근 시 오류가 뜬다.
- JSON으로 로그인 가능하게 코드 변경
- 로그인을 하면 Cookie에 refresh에 토큰이 담겨져 온다.
- 또한 Header에 access 키에 토큰이 담겨져 온다.
- 로그인 시 발급받은 Access 토큰
- refresh 토큰은 cookie에 저장되어있으므로 reissue 경로로 요청을 보내면
- 200 OK 응답과 함께 새로운 Access 토큰이 발급된걸 볼 수있다.