본문 바로가기

TIL

내일배움캠프 4기_Flask JWT MySQL 16일차 TIL

728x90

내일배움캠프 4기_Flask JWT MySQL 16일차 TIL


오늘 낮에 팀원들한테 JWT개념 설명하는데 조금 힘들었다.

그리고 너무 나만 하는 것같아(JWT 아무도 공부 안하는 느낌..) 살짝 화가 났다. 결국 짜증을 냈다.

오후에 이야기하고 민망해서... 내가 예민했다고 나의 입장을 돌려 말했다.

그럴 수도 있다고 이해해줬지만, 내가 고쳐야할 부분인 것같다.

(내 입장만 생각하지 말자! 내가 안한 부분, 다른 조원들이 하고 있었다.)

프로젝트 너무 스트레스 ㅠㅠㅠㅠㅠ

그래도 다들 구현하려고 하고! NewPeed쪽 BackEnd 구현되었다는 희소식!!

역시 뭉쳐서 하면 뭐가 되나보다.

너무 스트레스 받지 말아야지...!!


 

Flask JWT MySQL 활용 Logging System 구현

 

My SQL 임의의 회원정보

 

Flask JWT MySQL

Client에서 입력된 email, password가 users(회원가입 정보, 임의로 만듦)에 있으면,

토큰값을 DB서버에서 발행해 그 값을 Client에게 보냄.

Client는 로그인하면서 그 토큰을 쿠키에 저장!

 

버튼하나 생성해서 로그인한 회원만 접근 가능하도록 구현해봤다.

일단 Client에 요청(request)해서 로그인했을때 발급받은 token을 가져오기 위해 쿠키 요청!

가져온 토큰을 decode해 유효성 검사를 시도(try)해본다.

토큰의 payload['id']값이 곧 로그인때 입력한 email값인데, 이를 활용해 원하는 db값을 가져올 수 있게 구현하면 된다.

토큰이 유효하지 않으면 접근 불가능하다는 msg를 Client에 보내 회원가입하라고 알려준다.

 

로그아웃은 로그아웃버튼을 눌렀을 경우, Client에 저장된 Cookie를 삭제하면 된다.

Server Client
Token발급 header부분 Cookie에 Token값 저장

 

Flask JWT MongoDB활용 Logging System 구현한 코드를 git에서 찾아서 참고했는데,

이게 없었다면, JWT 개념 자체를 이해하기도 힘들었을 것 같다.