230206 포트폴리오 프로젝트(15)

geenee·2023년 2월 6일
0

Portfolio

목록 보기
21/38

비밀번호찾기/변경 기능 구현

아이디만으로 비밀번호를 변경하는것은 사용자 인증이 부족하다는 생각이 들었음
회원가입시에 이메일 중복확인을 이메일로 인증으로 바꿀예정
그리고 아이디/비밀번호 찾기를 진행할때 이메일 인증을 추가하여 찾을 수 있도록 변경

modemailer를 통한 이메일 인증

[React] Nodemailer Gmail Contact form 제작
[Node.js] Nodemailer로 이메일 전송하기 with Gmail
위 블로그 글에 나와있는 server.js쪽 소스코드 참고
일단 구글 계정으로 메일 전송 되는것은 확인 함

인증코드 생성

인증코드 6자리 생성
nodemailer를 통한 이메일 인증 구현

  let vericode = Math.floor(Math.random() * 1000000) + 100000;
  if (vericode > 1000000) {
    vericode = vericode - 100000;
  }

아이디 찾기 - 메일 인증 기능 추가

  • 이름 이메일 입력
  • 이메일 입력 후 인증번호 받기
  • 인증번호받기를 누르면 인증번호 input 태그 활성화
  • 메일 요청할 때 인증코드 6자리 만들고 name,email 전송 응답에 그대로 정보데이터 보내줌
  • 메일 전송 응답이 오면 인증코드,name,email 변수에 저장
  • 이름이나 이메일주소를 수정해도 인증번호 받기 버튼을 눌렀던 데이터 기준으로 아이디 정보 검색

  • 확인 버튼을 누르면 서버에서 생성한 인증코드와 사용하가 입력한 인증코드 비교
  • 일치하면 서버에 id 찾는 쿼리 전송
  • 쿼리 결과에 따라 아이디가 존재하지않습니다/아이디는 ***입니다 문구 표시

  • 결과가 표시되면 위에 input 값 데이터 전부 초기화/ 인증번호 input 비활성화

비밀번호 찾기 - 메일 인증 기능 추가

  • 비밀번호를 찾고자 하는 아이디 입력
  • 해당 아이디가 존재할 경우 이름/이메일 입력하여 인증 - 회원가입할때 기입한 정보로만 가능
  • 메일 인증 절차는 아이디 찾기 하는 경우와 같음
  • 메일을 통한 본인인증이 되면 비밀번호 변경 가능

  • 비밀번호를 변경하여 사용자 데이터베이스 업데이트/변경된 비밀번호로 로그인 가능

그리고 회원가입할때도 이메일 인증코드 받도록 바꾸면 관련내용은 끝
시간되면 sns 로그인도 꼬옥..

profile
코딩 공부 기록용

0개의 댓글