kookmin-sw / capstone-2023-08

capstone-2023-08 created by GitHub Classroom
1 stars 4 forks source link

닉네임 및 비밀번호 변경 api 추가 #137

Closed wynter122 closed 1 year ago

wynter122 commented 1 year ago

2e055cb61c75447b29661f8aaae2d19462a6eb7a, 337b7a4b28674a0ad97664af0fa94fd86d47c79d 두 커밋만 확인하시면 됩니다. 자꾸 예전 내역이 반영되네요..

닉네임변경

테스트 결과

image

image

response 로, 로그인과 동일하게 변경된 User data를 반환합니다. 따라서 프론트에서는 해당 값으로 보유하고있던 유저 정보를 업데이트해야합니다.

비밀번호 변경

테스트 결과

image

image

-> 이후 궁금한것은, 비밀번호 변경 이후 로그아웃 처리를 해야하는가? 입니다. 만약 해야한다면 로그아웃 기능 구현한 후 추가하려고 합니다.

lucyya99 commented 1 year ago

비밀번호 변경이면 토큰을 새로 받아야해서 프론트에서는 토큰 응답받은거 업데이트로 가겠습니다!

wynter122 commented 1 year ago

로그아웃 구현

로그아웃의 경우, 저희가 토큰을 사용하고 있기 때문에 서버에서 토큰을 삭제하는것은 완전히 불가능하다고 알고있습니다. 따라서, 로그인시에 cookie 에 담았던 토큰을 삭제해주는 방식으로 로그아웃을 구현할 수 있다고 해서 해당 방식을 사용했습니다. 로그아웃에 성공하면 클라이언트에서는 저장된 토큰을 모두 삭제하시면 됩니다.

client : POST http://35.84.85.252:8000/account/logout 토큰 필요, 담을 데이터 없음

테스트

먼저, 로그인을 시도합니다. 쿠키에 토큰이 담겨옵니다.

image

토큰으로 logout 을 시도하면, 다음과같이 쿠키에서 토큰이 사라집니다.

image

클라이언트에서는 success 를 받은 후 토큰을 삭제하면 됩니다. 이후 리디렉션 url을 /account/sign-in 으로 해두긴 했는데, 프론트에서 반영이 잘 될지 모르겠습니다.

wynter122 commented 1 year ago

DB 에 S3 img 추가하는 api 구현

138 에서 구현해야했던 "DB에 user_img_url 추가하는 API 구현" 이 해당 PR의 view 에 적절하다고 판단하여 같이 진행합니다.

client : POST http://35.84.85.252:8000/account/add-imgurl data : { "user_img_url" : img_url } 토큰인증 필요

테스트

user_id = 'null_test' 로 진행했습니다. (1행) api request 이후 DB에서 null_test 회원의 user_img_url 필드가 성공적을 바뀝니다.

image

image

wynter122 commented 1 year ago

비밀번호 변경 수정

우선, 현재 비밀번호를 체크하는 부분을 까먹어서 추가했습니다........ 그리고, 로그아웃은 하지 않고 새로운 토큰을 발급해드리니 클라이언트쪽에서는 response 받아서 토큰 업데이트 해주시면 되겠습니다.

client : POST http://35.84.85.252:8000/account/change-pw data { "origin_password" : 현재 비밀번호, "new_password" : 변경값 } <- 이 부분이 변경되었습니다. 토큰 필요

테스트