✍️ 서론Pumble은 로컬 회원가입 과정에서 다음과 같이 사용자의 메일로 인증 번호를 전송하고 이를 검증한다.이를 위해 인증 메일 전송/인증 코드 검증을 구현하고자 했다. 👾 목표1. 6자리의 인증코드를 생성하여, 이를 사용자 메일 주소에 전송한다.2. 인증코드는 일정 시간동안만 보관한다.3. 사용자가 입력한 코드와 저장해두었던 인증코드가 동일한지 확인한다.4. 동일하다면 회원가입 절차로 넘어간다. ☘️ 진행이번엔 메일을 보내는 것까지 포스팅할 예정이다.1. Gmail IMAP 허용먼저 인증 메일을 보내고자 하는 주소의 설정에서 IMAP을 허용하도록 한다. Gmail로 들어가 우측 상단의 설정을 누른다. 설정을 누르면 나오는 Quick settings에서 `See all settings`를 선택한다..
node.js
🧐 상황경험차 캡스톤 디자인에 사용할 서버를 Node.js - Docker - AWS ElasticBeanstalk으로 배포하고자 했다.Dockerfile이라던가 배포를 위한 .yml 파일 다 맞게 한 것 같은데 EB에만 올리면 실행이 되지 않았다. 👻 문제추측되는 원인은 다음과 같았다.1. Node.js 프로젝트 자체가 잘못되었다.2. Docker 이미지가 잘못 빌드되었다.3. DockerHub에 있는 이미지를 EB에서 pull 하지 못한다.4. EB가 Docker 이미지 또는 Node.js 프로젝트를 실행하지 못한다. 1. Node.js 프로젝트 자체가 잘못되었다. ❌로컬에서 npm start로 프로젝트를 실행했을 때 문제 없이 실행되었기 때문에 제외 2. Docker 이미지가 잘못 빌드되었다. ..
🧐 상황 데모데이 이후로 퀸텟 API를 돌려보는 경우는 거의 없었다. 프론트 분들도 딱히 별말씀이 없으셔서 이제까지 따로 살펴보지 않았다. 그런데 최근 토큰 기반 인증을 도입하면서 미들웨어 테스트를 돌려보는데 ??? endOfWeek 값이 이상하다. 한 주의 시작이 11월 27일이면 그 주의 마지막은 12월 3일이어야 하지 않는가..! 급하게 달력을 확인해보니 일자가 틀린 건 아닌 것 같았다. 그 말인 즉, 날짜를 구하는 과정에서 달은 그대로 두고 일만 바뀐 것으로 추측할 수 있다. 날짜를 구하는 함수는 다음과 같다. function getWeekRange() { const KST = moment().tz('Asia/Seoul'); const day = KST.day(); // 요일 (0: 일요일, 1:..