Skip to content

Conversation

@soheeparklee
Copy link
Contributor

#️⃣연관된 이슈

ex) #이슈번호, #이슈번호

📝작업 내용

  • 유저에 user_status를 추가하였습니다. 회원가입을 하면 가입으로 설정하고, 탈퇴하면 탈퇴로 변경됩니다.
  • user_status가 탈퇴인 유저는 로그인 할 수 없습니다.
  • 회원 탈퇴시 유저의 모든 모든 목표, 할 일, 인증, 좋아요, 댓글, 팔로워, 팔로이는 삭제됩니다.
  • 탈퇴하는 즉시 토큰은 블랙리스트에 추가되며, 로그인이 필요한 API들은 사용할 수 없습니다.

스크린샷 (선택)

탈퇴 후 응답

Screenshot 2024-12-28 at 23 23 23

탈퇴 후 로그인을 시도했을 때 예외처리

Screenshot 2024-12-28 at 23 23 50

탈퇴 후 토큰이 필요한 API를 시도했을 때 예외처리

Screenshot 2024-12-28 at 23 24 19

💬리뷰 요구사항(선택)

리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요

회원탈퇴의 경우 유저는 변경이고, 유저에 딸린 목표/할일/인증 등등은 삭제입니다.
MapppingPUT으로 할지 DELETE로 할지 고민하다가 유저에 대한 API이고 유저는 status변경이니 PUT으로 구현했습니다.
어떻게 생각하시는지 궁금합니다.

@soheeparklee soheeparklee self-assigned this Dec 28, 2024
@soheeparklee soheeparklee linked an issue Dec 28, 2024 that may be closed by this pull request
2 tasks
Copy link
Member

@bbbbooo bbbbooo left a comment

Choose a reason for hiding this comment

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

고생하셨습니다.

http method의 경우 관점의 차이인 것 같아요. 리소스의 상태 변경(db의 관점)이라는 것에 초점을 두면 put이고, restful에 가까운 표현은 delete가 더 적합하다고 생각해요.

여기서부턴 개인적인 의견입니다.

저라면 delete로 했을 것 같습니다. 클라이언트는 db의 상태를 직접적으로 알 필요가 없으며, 특정 리소스를 삭제한다는 행동만 알면 된다고 생각해요. 이 과정에서 상태 변경(삭제 여부 확인 등)은 백엔드가 처리할 책임이므로, delete를 사용하여 명시적으로 리소스 삭제 요청을 전달하는 것이 restful api의 설계 원칙과도 부합한다고 생각합니다.

@soheeparklee soheeparklee merged commit 384e716 into develop Dec 29, 2024
1 check passed
@soheeparklee soheeparklee deleted the feature/auth-withdrawl branch December 29, 2024 11:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

회원 탈퇴

3 participants