JWT는 ...
RFC 7519 웹 표준으로 지정 되어있고
JSON 객체를 사용해서 토큰 자체에 정보들을 저장하고 있는 Web Token이다.
JWT를 이용하는 방식은 헤비하지 않고 아주 간편하고 쉽게 적용할 수 있어서 사이드 프로젝트를 진행할 때는 아주 유용하다.
✅ JWT의 구성
✅ JWT의 장점
✅ JWT의 단점
spring initializer를 통해 프로젝트를 생성한다.
만약 IntelliJ를 이용한다면,
IntelliJ Preferences > Annotation processors > Enable annotation processing을 체크해주자.
다음으로, main > java 의 개인적으로 이름 붙여진 패키지 안에 'controller' 패키지를 만들어주고,
'controller' 패키지 안에 'HelloController.java' 파일을 만들어준다.
@RestController와 @RequestMapping 어노테이션을 추가해주고, 패스는 "/api"로 한다.
간단한 문자열을 리턴해주는 api를 만들어준다.
테스트를 위해 Application을 실행한다.
필자는 8080이 이미 사용중이라는 에러가 떴는데, 이 문제는 cmd 창을 관리자 권한으로 실행하여 프로세스를 강제로 종료시켜줘야 한다,,,,
netstat -ano | findstr 8080
taskkill /F /pid [process_id]
윈도우는 위의 코드로 강제 종료 가능하다!
api에 대한 테스트는 포스트맨을 사용해보자.
새로운 collection을 만들어준다. (필자는 jwt-tutorial로 만들었다.)
만들어준 collection에 'hello'라는 request를 추가해준다.
그리고 'http://localhost:8080/api/hello'를 send 한다.
그럼, 401 Unauthorized 응답이 리턴된 것을 볼 수 있다.
다음에 계속,,,
[인프런 강의 _ Spring Boot JWT Tutorial을 참고하였습니다.]