오늘은 코드카타 SQL 58번 문제를 풀고, 뉴스피드 프로젝트를 마무리했다!
오늘은 1개의 SQL 문제를 풀었는데, 3개의 테이블을 join하는 문제였다.
3개의 테이블을 join하고, 제시된 조건에 맞는 데이터를 출력하는 것이었는데, where절에 조건을 다 쓰니 나오는 데이터가 1개밖에 없더라.
그런데 문제에는 order by를 사용하라는 조건이 있었고.. 그래서 이상하게 하고 있는 줄 알고 열심히 다른 방법들을 찾고 있었다.
하지만,, 결과가 1개뿐인 건 맞고, 그냥 그 상태에서 order by를 사용하면 되는 것이었다..
앞으로는 답이 이상한 것 같아도 일단 답안을 제출해봐야겠다..
오늘 푼 문제와 풀이는 깃허브를 통해 업로드해두었다.
GitHub 보러가기
오늘은 뉴스피드 프로젝트의 도전 기능을 마무리했다!
사실 이제 프로젝트를 마무리했다!
오늘 스탠다드반 세션에서 JWT를 배웠다! 그래서 나는 오늘 기존에 Session으로 로그인하던 것들을 JWT로 변경하는 작업을 주로 하였다.
JWT는 서버가 로그인 상태를 저장하지 않고, JWT 자체에 모든 인증 정보가 담겨있는 인증 방식이다.
JWT는 로그인과 로그아웃의 개념이 세션과는 많이 달랐다.
세션을 사용할 때는 로그인할 때 세션을 생성하고, 로그아웃할 때 세션을 무효화하는 방식이었는데,
JWT는 토큰이 있으면 로그인 상태, 토큰이 없으면 로그아웃 상태로 받아들인다.
그러니 사실 JWT를 사용하면 백엔드보다는 프론트엔드에서 토큰을 Http Header에 넣어주고, 빼는 방식으로 로그인과 로그아웃 메커니즘을 구현해야 했다.
처음에는 프론트엔드와 백엔드의 역할이 나눠지지 않아 이걸 받아들이기가 어려웠다.
하지만.. 이 처리는 프론트엔드에서 알아서 하리라 믿고 백엔드에서는 굳이 다른 작업을 추가하지 않기로 했다.
JWT를 사용하는 방법에 대해서는 노션을 통해 자세히 정리해두었다.
Notion 확인하기
이런저런 작업들을 해서 얼추 프로젝트를 마무리하고, 튜터님께 최종 코드 리뷰를 받았다!
그런데,,, 자잘자잘하게 수정해야 할 부분들이 너무나도 많더라..
11시가 넘어가는 지금까지도.. 아직도 수정하고 수정하고 수정하고 있다..(물론 내가 하는건 아니지만)
더 자세한 내용은 내일 모든 것들이 끝나고 나서 정리해야겠다,,
우리 팀이 진행한 내용들은 깃허브를 통해 업로드해두었다.
GitHub 보러가기
팀 프로젝트가 이제 막바지에 다다라서 발표 자료도 만들고, 발표 준비도 하고, 이것저것 준비할 것들이 너무 많다...
그래서 코드카타도 계속 못하고, 사실 개인 시간이 없어서 TIL에도 많은 시간을 못쓰고 있다..ㅠ
내일 팀프로젝트 발표까지 다 끝나고 나면 전체 내용을 쭉 정리해봐야겠다.