Spring boot kim's cafe/이메일발송시스템

Spring boot 비밀번호찾기!(1) 인증번호 발송

디비드킴 2021. 6. 16. 10:03

시스템은 이메일을 입력하면

db에 존재하는 이메일인지 확인하고

인증번호 요청을 누르면 인증번호가 가고

인증번호를 알맞게 제출하면

임시 비밀번호를 주고

db 비밀번호도 임시로 바뀌게

된다

 

html

findpwdpage.html

이제 비동기 ajax로 또

이메일이 존재하는지 안 하는지 알려주면 된다

이메일 중복검사 로직을 사용하면 된다!

 

js

반대로 존재하지 않으면 red

존재하지 않는 이메일이라고 말해준다

인증번호 발송도 

이전에 만들어 놓았던

이메일 인증을 한 번 더 사용하면 된다

sendemail.java
restcontroller.java

근데 보면 이메일을

AuthenticationPrincipal principaldetail principaldetail에서

즉 로그인했을 때만 꺼내 쓸 수 있게 사용되고 있다

그래서 저 몸통 부분을 빼서 

emailservice.java

이렇게 변수로 받을 수 있게

서비스로 하나 빼주고 물론 

private로 restcontroller에 하나 만들어 줘도 된다

그럴걸 그랬나..?

 

restcontroller에 

restcontroller.java

이렇게 nologin이라고 새 링크를 만들어주고 

근데 좀 불편하다... 내용이 같은데 말이지...

어쨌든!

 

js로가서

 

. value 까먹지 말자!

이제<input type="button" id="sendemail" value="인증번호전송"> 를 누르면

 

 

짠 다음에는 임시 비밀번호 발급을 진행하면 된다!

이메일 인증이랑 뭐 거의 비슷하다!

 

추가 

한 가지 안 한 게 있다

백엔드에서 입력 이메일이

우리 사이트에 회원 가입한 이메일이 맞는지 검사해야 한다!

 

이전에 아이디 중복검사에 사용 중인 함수를 이용해서

yes=true가 오면 인증번호를 안 쏘게 하면 된다