프로젝트/나만의명언집 (28) 썸네일형 리스트형 [나만의 명언집 만들기 프로젝트] 기능 구현 모음집 ① 오늘의 명언 포스트 목적 - 해당 포스트는 프로젝트 진행 시 구현한 기능 중 일부를 정리한 모음집 입니다. - 포스트 순서는 기능 구현 개요 → 구현 과정 → 마무리(혹은 회고) 순으로 진행됩니다. - 해당 포스트의 언어체는 '~였다.' 형식으로 작성됩니다. [기능구현] 좋아요 기능 (기능 추가 이유 및 목적) 프로젝트를 진행하면서 좋아요 기능을 추가할 예정은 없었지만, 향후 사이트가 확장하여 보다 많은 명언 데이터를 가지게 되고, 어느 정도 활성화 되는 경우 어떤 데이터를 가지고 사용자에게 도움이 되는 정보를 제공할 수 있을지 고민하였다. (결론) 이에 조회수와 좋아요를 기반으로 추천 명언을 보여주는 것이 제일 우선이 되어야 하는 기본이라 판단하여 해당 기능을 추가하기로 하였고, 이에 대한 기능구현 과.. [나만의 명언집 프로젝트] 트러블 슈팅 모음집 ② | 7 ~ 13 들어가기 전해당 포스트는 프로젝트를 진행하는 중 경험한 문제를 최대한 정리해두는 포스트 입니다. 이 글이 우연히라도 누군가의 도움이 되는 개선책이 담겨 있다면 좋겠습니다. 참고로, 해당 포스트는 트러블 슈팅①(https://duklook.tistory.com/417) 에 이어서 작성됩니다. 전반적으로 빌드나 서버 측 환경에서 경험한 문제들이 모여진 것 같습니다. [빌드 에러] 실시간 명언 및 오늘의 명언의 정적 빌드 문제※ 이 부분은 트러블 슈팅 1 에서 다룬 정적 페이지와 동적 페이지 빌드에 대한 부분에 관한 처리를 다루는 이슈 입니다. NextJS 는 개발 환경에서는 정적 페이지를 생성하지 않지만, 배포를 위해 빌드하게 되면, 정적/동적 페이지가 별도로 구분되어 빌드가 되는데, 동적으로 자동 빌드가.. [나만의명언집 프로젝트] 트리블 슈팅 모음집 ① | 1 ~ 6 들어가기 전아주 사소한 문제일지도 모르나 직면했던 일부 이슈들을 하나씩 정리한 포스트 입니다. 개인의 참고용 및 히스토리로 남기기 위한 목적으로 작성되었습니다. NextJS 를 사용했기에 프론트엔드와 백엔드 간의 구분이 모호하여 이를 별도로 구분해서 정리할까 고민했으나, 결국 하나의 프레임워크 내에서 발생하는 일이므로 이를 구분하지 않고 정리하는 것이 문서의 흐름에 좋을 듯하여, 구분없이 목차별로 정리하였습니다. 전체적으로 1,2,3 가지의 파트가 있으며, 정리한 수에 비해 비중있는 트러블 슈팅이 많이 없을 수 있습니다. 돌아보면 부끄러운 기록이 되겠지만, 이번 프로젝트는 저에게 있어서는 감회가 남달랐던 경험이었기에 다른 프로젝트에 비해 최대한 상세히 정리하며 넘어가볼까 합니다. 그럼 시작하겠습니.. [나만의 명언집 프로젝트] NextJS(^14.1) 에서 적용한 accessToken 을 이용한 토큰 인증에서 refresh + access 방식으로 수정 오늘의 명언 이 포스트의 목적 더보기 이번에 약 1달의 기간동안 나만의 명언집 프로젝트에 리액트의 메타 프레임워크인 NextJS 14.1 버전을 사용하였습니다. 이 프로젝트에 로그인 인증을 구현하기 위해서 간편한 인증 라이브러리인 next-auth( → 현재는 auth.js 로 새단장중)와 같은 도구를 사용 하지 않고, 전통적인 방식의 JWT 라이브러리를 활용해서 인증을 구현하였습니다. 이 포스트의 목적은 기존 프로젝트에 적용된 jwt 인증 방식(accessToken 기반)의 보안상 문제점을 인식하고, 이를 개선하기 위해 refreshToken 을 적용하는 리팩토링 과정에서 보이는 여러 가지 문제점들을 기록하고 개선하는 모든 과정을 정리하는 것 입니다. 따라서 내용의 흐름이 부자연스러울 수 있다는 점을 .. 이전 1 2 3 4 다음