user 서버에 로그인 요청 -> user db에서 ID/Password 대조 후 일치하는 사용자면 토큰 생성 -> 응답으로 유저에게 토큰 반납
프론트엔드가 없으므로, main 서버에 api 요청시 헤더에 수동으로 토큰값 입력 -> main 서버에서 토큰 검증
jwt 토큰을 생성하기 위한 함수 생성
로그인 로직 구현
바디에 ID/Password를 담아서 요청시 DB에 일치하는 유저가 있는지 확인
user_id와 user_type을 담은 토큰 생성
로그인 및 토큰 생성 구현 완료
헤더에 포함된 토큰을 검증하는 로직 구현
트러블슈팅
[ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
서버가 2개 이상의 응답을 보내려할때 발생
if문 밖의 res.json 문을 지워 해결
트러블슈팅
Invalid Token Error
console.log(token)을 통해 토큰값을 확인한 결과, 제대로 들어간 것을 확인
그러나 Invalid Token Error 발생
https://stackoverflow.com/questions/48606341/jwt-gives-jsonwebtokenerror-invalid-token
토큰 앞의 Bearer를 제거한 후 해결했다는 글을 발견
split(' ')을 통해 토큰값만 불러온 후 해결
'Code States > TIL' 카테고리의 다른 글
[0623] jwt 토큰을 이용한 유저 타입에 따른 crud api 분리 (0) | 2023.06.23 |
---|---|
[0621] EC2를 이용한 Grafana 구축 (0) | 2023.06.22 |
[0621] VPC 생성 및 서브넷 구현 (0) | 2023.06.21 |
[0620] Github Action을 이용한 Lambda 함수 자동화 (0) | 2023.06.21 |
[0620] Route 53 연결하여 https 적용 (0) | 2023.06.21 |