EveryUniv / student-council-homepage-backend-v1

GNU General Public License v3.0
2 stars 4 forks source link

Feat : Spring Cache & EmailCode 생성 및 검증 #220

Closed YOONSEOUNGHWAN closed 1 year ago

YOONSEOUNGHWAN commented 1 year ago

Spring Cache

Key, Value 형식으로 저장했습니다.

@CachePut -> 이메일 인증 코드 및 만료시간을 5분으로 설정하였습니다.

@Cacheable -> Cache를 생성 및 조회하는 어노테이션인데, 기존에 값이 없다면 생성하기에 이를 이용하여 기존에 값이 없는 경우 throw Exception으로 에러 처리를 하였습니다. 값이 존재할 경우 Cache에서 반환합니다.

@CacheEvict -> Scheduler에 등록하여 자정마다 Cache를 삭제합니다. (SchedulePetition -> SchedulePetitionAndCache 이름변경) 이렇게 설정한 이유는, @CachePut이 Update 역할을 해주기에 요청마다 값이 갱신됩니다.


모바일 API 경로를 api/m/~~ 로 통일하였습니다.


기존 API를 활용하기 위한 EmailValidationToken생성

image

기존에 사용하던 회원가입 API를 그대로 사용하기 위해 EmailCode가 일치할 경우 Token을 발급하였습니다. 에 data로 담았습니다. Client에서 Header에 "EMAIL-VALIDATION-TOKEN"으로 세팅하면 기존 API를 그대로 사용할 수 있습니다.