오늘의 원래 목표는 게시판 CRUD를 구현하는 것이었지만,
팀원들의 요청이 있어 로그인기능을 html페이지에 연동하는 작업을 했다.
일단 로그인기능을 제대로 이해하기 위해선 JWT(JSON Web Token)의 개념을 아는게 중요하다.
음.. JWT를 쉽게 말하면 두 개체에서 JSON 객체를 사용하여 가볍고 자가수용적인 (self-contained) 방식으로 정보를 안전성 있게 전달해주는 기능을 가진 토큰이다.
주로 회원인증을 할때 쓰이는데, 유저가 로그인을 하면 서버는 유저의 정보에 기반해 토큰을 발급해준다.
이게 왜 필요하냐? 서버가 세션을 유지할 필요없이 유저가 토큰을 가지고 있으면 해당유저의 요청을 받을 수 있기 때문이다. 즉 서버자원을 많이 아낄 수 있다.
이렇게 header, payload, signature 로 이루어져 있는데
이걸 하나로 합치면 하나의 토큰이 완성된다.
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJ2ZWxvcGVydC5jb20iLCJleHAiOiIxNDg1MjcwMDAwMDAwIiwiaHR0cHM6Ly92ZWxvcGVydC5jb20vand0X2NsYWltcy9pc19hZG1pbiI6dHJ1ZSwidXNlcklkIjoiMTEwMjgzNzM3MjcxMDIiLCJ1c2VybmFtZSI6InZlbG9wZXJ0In0.WE5fMufM0NDSVGJ8cAolXGkyB5RmYwCto1pQwDIqo2w
(대충 요렇게 생김)
요걸 이용해 로그인 기능을 구현했다.
메인 페이지
로그인완료!
로그인 기능도 넣은 김에 회원가입 기능을 먼저 넣고, 이를 게시판글쓰기와 연동해서 회원만 글 쓸수 있게 구현해 보려고 한다.
내일도 화이팅!