리눅스마스터 2급 1차
·
회고록
나는 재미가 없으면 시작을 안해버리는 스타일이라... 지금까지 '자격증 취득'만을 목표로 자격증을 딴 적은 거의 없는 것 같다. 이번에는 개인 프로젝트를 하면서 리눅스에 관심이 생겨서 리눅스 마스터 2급 자격증에 도전하게 되었다. 개인 프로젝트를 어느 정도 마무리한 후, 다양한 기능을 더 추가하고 싶었지만, 일단 배포 경험을 쌓아보기로 했다. 그리고 배포 과정을 겪어보니 비전공자인 나한테는 리눅스 명령어를 검색하고 이해하며 사용하는 것이 큰 진입장벽이었다.아무것도 모르던 시절, '프로그래머' 라고 하면 떠올리는 검은 화면에 하얀 글자로 명령어를 입력하고, 뭔가 실행되는 듯한 화면을 보면서 디지몬의 한솔이가 쓰는 모습을 떠올리곤 했다...😅그렇게 더듬더듬 리눅스 명령어를 따라 치며 배포 과정을 진행하다 ..
[Refactoring] Axios Interceptor 적용
·
Project 댕린이집
📌 개선 이유백엔드와 통신시 인증이 필요한 경우 아래와 같이 헤더에 토큰을 넣어서 메서드를 요청해야 한다.매 요청 작업마다 작성하면서도 '이걸 이렇게 다 쓰는 게 맞나?' 'spring의 인터셉터 같은 게 있지않을까?' 하고 생각했었다.하지만 무지했었기 때문에 일단 일일이 다 작성했던 상태였다.그리고 이제 리팩토링을 해볼까 하는 시점에서 편리한 방법이 있는지 검색해보았고,  Axios Interceptor 를 알게 되었다.  📌 Axios Interceptor 란?Axios Interceptor는 Axios에서 HTTP 요청과 응답을 가로채고, 이를 처리하거나 변형할 수 있는 기능을 제공한다. 이 기능은 요청을 보내기 전이나 응답을 받은 후에 특정 작업을 수행해야 할 때 매우 유용하고, 주로 다음과 ..
[Refactoring] Redis를 사용해 Refresh Token 관리해보자
·
Project 댕린이집
📌 개선 이유이번 프로젝트에서 대부분의 주요 기능을 구현한 후, 서버 부하를 줄이고 유지보수성을 향상시키기 위해 리팩토링을 진행하기로 했습니다.이번 프로젝트에서 가장 많은 공부를 하였고, 신경을 썼던 부분은 Spring Security와 JWT를 사용한 토큰 및 회원 관리입니다. 백엔드 파트에서 신경쓰고자 한다면 무수히 많은 부분이 있겠지만, 아무래도 회원 관리의 보안에 대한 부분이 가장 기본적이라고 생각했기 때문입니다. 그래서 이 부분에 대해 더욱 깊이 이해하고 개선하고자 하는 욕심이 있었습니다. Refresh Token은 유효기간이 있기 때문에, 이를 DB에 저장하면 주기적으로 삭제해주어야 하는 번거로움이 존재합니다.Refresh Token에 대한 깊은 이해가 부족했고 일단 구현만하자 라는 생각으로..
[소셜로그인] 카카오 로그인
·
Project 댕린이집
요즘 어느 사이트든 기본인 소셜 로그인을 구현해봐야겠다는 생각이 들어서 도전!    기본적으로 먼저 카카오 디벨로퍼에서 애플리케이션을 등록해주어야 한다. 📌 Kakao Developers 애플리케이션 등록 https://developers.kakao.com/ Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.com Kakao Developers에 접속하여 로그인'내 애플리케이션' 으로 이동하여 '애플리케이션 추가'를 클릭하여 생성플랫폼 설정Web 플랫폼을 추가하고 도메인을 설정배포 전이라면 localhost:3000을 설정하고, 배포 후에는 배포한 도메인도..
[알림장] 작성 / 조회
·
Project 댕린이집
알림장은 별거 아닌거 같지만, 초보자 입장에서 꽤나 공수가 많이 들어갔다😓일단 처음에 식사나 배변 횟수 또는 상태 컬럼을 어떻게 나누고 표현할지, 라디오버튼 또는 체크박스를 어떻게 표현할지 많이 고민하고 헤매었다.개인적으로 이 부분은 사용자가 쉽고 빠르게 작성하며 한 눈에 확인할 수 있는 페이지이길 바랐으며, 댕린이집 웹사이트의 기능들 중에 어쩌면 가장 주요 기능이기도 하다.  먼저 테이블 설계부터 기록해보자.⭐ Noteid: 고유 식별자 (자동 증가)note_date: 알림장의 날짜meal: 식사 정보 (JSON 형태로 아침식사, 점심식사, 저녁식사, 간식 여부를 저장)poop_frequency: 배변 횟수 (0회, 1회, 2회, 3회 중 하나의 값을 저장)poop_condition: 배변 상태 (건..
xoo | 수진
xoo의 성장기록