Skip to content

✨ 이메일 인증 로직#29

Open
ChanHoHan wants to merge 16 commits into
devfrom
feature/mail
Open

✨ 이메일 인증 로직#29
ChanHoHan wants to merge 16 commits into
devfrom
feature/mail

Conversation

@ChanHoHan

@ChanHoHan ChanHoHan commented Sep 3, 2023

Copy link
Copy Markdown
Collaborator

작업 이유

조직 이메일 인증 기능
image

작업 사항

조직 이메일 인증

  1. 조직 코드가 담긴 이메일을 전송.
  2. 사용자는 전송받은 이메일을 통해 해당 조직임을 인증 완료한다.

조직 정보

  1. 자신이 속한 조직 정보 리스트 조회
  2. 자신이 진행중인 인증 리스트 조회
  3. 조직 인증 진행 취소

추가로 해야할 일

  1. 인증 이메일 템플릿 작업 (현재는 버튼 하나만 구성됨)
  2. 조직 목록 조회 (조직 코드)
  3. 인증이 완료되었을때, 리다이렉트 시킬 화면이 필요
  4. 인증된 조직 취소

이슈 연결

close #26

@ChanHoHan ChanHoHan self-assigned this Sep 3, 2023
Base automatically changed from feat/oauth-jwt-signup to dev October 7, 2023 06:34
@ChanHoHan ChanHoHan marked this pull request as ready for review December 11, 2023 11:49

@psychology50 psychology50 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

종강하고 나서야 드디어 확인..✨

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

와, 이걸 이렇게 써버리네요 ㅋㅋㅋㅋㅋㅋ 재밌는 거 배워갑니다.

"/api/v1/contents/get", "api/v1/comments/get",
"/api/v1/profile/**",
"/login/oauth2/**", "/api/v1/feed/title", "/api/v1/feed/body", "/api/v1/feed/nickname"
"/login/oauth2/**", "/api/v1/feed/title", "/api/v1/feed/body",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이게 뭐하는 api인지는 모르겠지만, /api/vi/feed/title, /api/v1/feed/body보다 QueryParam으로 받는 게 낫지 않을까요?
예를 들어, /api/v1/feed?type=title이라던가. 그러면 api도 하나로 줄일 수 있을 것 같아서요.

@psychology50 psychology50 Dec 26, 2023

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

근데 상수면 ENUM 쓰는 게 좋을 것 같은데, 전부 class를 사용하신 이유가 있는 건지 궁금해요

OrganizationService organizationService) {
this.listOperations = redisTemplate.opsForList();
this.redisTemplate = redisTemplate;
this.organizationService = organizationService;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OrganizationService가 Redis Service를 참조하는 게 아니라,
Redis Service가 OrganizationService를 컴포지션하고 있네요..?
나중에 의존 관계가 헷갈리지 않을까..살짝 우려되는 부분

private static final long EXPIRED_TIME = 600;

public OrganizationCertificationService(RedisTemplate<String, OrganizationCertification> redisTemplate,
OrganizationService organizationService) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이건 궁금한 건데, @Autowired 안 붙여줘도 자동으로 Bean 주입이 되나요???

* @param httpServletResponse
* @throws Exception
*/
@GetMapping("/cert/{userId}/{token}/{code}")

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이것도 path param이 아니라 query param이어야 할 거 같아요.
REST에서 제시한 URL과 좀 어긋나기도 하고 , 클라이언트가 /cert/1/sdfasdf/9515 이런 식으로 전달하려면 힘들 것 같습니다.
그리고 id를 받으려면 /users/{userId}, /users/{userId}/certs/{certId} 이런 식이어야 할 거예요.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ 이메일 인증 작업

2 participants