개발을 시작하기 전 먼저 팀원들과 의견을 나누는 시간을 가졌다. 어떤 스택을 사용할 것인지 UI는 어떻게 할 것인지 DB는 어떻게 설계 할 것인지에 대해서 의견을 나누었다. 기술 스택 정하기 첫 번째로 기술 스택에 대한 의견을 통일하는데 어려움이 있었다. 나는 일단 GraphQL이란 기술을 사용하고 싶었는데 첫 번째 이유로는 REST API와 Gra...
팀원들과 설계를 마치고 실제로 개발에 들어갔다. 팀의 Role은 Front-end 2명, Back-end 2명으로 시작했다. 개발을 바로 시작하진 않고 GraphQL에 대한 학습을 먼저 진행했다. 학습을 완료한 후에 같이 Back-end를 맡게된 팀원과 설계 때 정한 미들 웨어들을 설치하는 작업과 DB 구축을 같이 진행했다. DB 구축을 완료한 후...
이메일 인증 기능 서버 설정을 끝마치고 가장 먼저 구현한 기능은 이메일 인증 기능이다. 이메일 중복 확인을 하면 입력한 이메일 주소로 인증 문자를 보내서 인증 문자를 통하여 본인 확인을 할 수 있는 기능을 만들었다. 이메일 인증 기능을 구현하기 위해 사용한 모듈은 nodemailer이다. nodemailer는 이메일을 보내주는 모듈인데 무료로 이메일을 보...
이메일 인증 기능을 완료하고 회원 가입 기능을 구현 하였다. 기능 자체를 구현하기 전에 비밀번호를 해싱을 먼저 구현했다. sequelize의 hooks를 이용해 crypto 모듈을 통해 password를 해싱하는 작업을 해주었다. 테이블에 데이터가 만들어질 때 비밀번호를 해싱하고 로그인 할 때 테이블을 찾을 때 다시 비밀번호를 해싱하여 일치하는 데이터...