/**
* 토큰인증
*
* 1) 사용자가 로그인 또는 화원가입을하면, 토큰 발급받는다.
*
* 2) 로그인 할때는 Basic 토큰과 함께 요청을보낸다.
* Basic 토큰 : '이메일:비밀번호'를 Base64로 인코딩한 결과
* ex) {authorization : 'Basic {token}' }
*
* 3) 아무나 접근 할 수 없는 정보 (private router)를 접근할때는
* access토큰을 헤더에 추가해서 요청과함께 보낸다.
* ex) {authorization: 'Bearer {token}'}
*
* 4) 토큰과 요청을 함께 받은 서버는 토큰 검증을 통해 현재 요청을 보낸
* 사용자가 누구인지 알 수 있다.
* ex) 토큰의 sub(id) => 해당 사용자의 post filter
*
* 5) 만료시간이 지나면 새 토큰을 받아야한다.
* 그렇지 않으면 jwtService.verify() 통과가 안됨.
* -> /auth/token/access => access 토큰 새로발급
* -> /auth/token/refresh => refresh 토큰 새로발급
*
* 6) 토큰이 만려되면 각각의 토큰을 새로 발급 받은 수 있는 엔드포인트에 요청을 해서
* 새로운 토큰을 발급받고 새로운 토큰을 사용해서 private route에 접근한다.
*/