Step3-kakao-tech-campus / Team3_BE

[카테캠 1기] 번개 지향 볼링 모집 커뮤니티 "번개볼링"의 백엔드 서버입니다.
2 stars 4 forks source link

redis를 사용한 리프레시 토큰과 함께 인증 시퀀스 완성 #16

Closed jagaldol closed 1 year ago

jagaldol commented 1 year ago

Summary

redis의 경우 도커로 띄웠고, 액세스 토큰과 리프레시 토큰을 구현 완료 하였습니다. api 적인 관점에서는

총 4가지의 api를 구현하였습니다.

Description

redis

redis의 경우 docker-compose-redis.yml을 통해 컨테이너를 만들었습니다. 개발/ 배포 profile에 전부 redis 설정을 집어 넣었습니다.

$ docker-compose -f docker-compose-redis.yml up

명령어로 레디스 컨테이너를 실행하실 수 있습니다. 혹은, intelliJ의 run configuration으로도 설정가능합니다.

image

redis에 직접 접근하여 값을 보고 싶은 경우,

$ docker exec -it redis redis-cli
127.0.0.1:6379> keys *
(empty array)
                                                     #  로그인 진행 후
127.0.0.1:6379> keys *
1) "1"
127.0.0.1:6379> get 1
"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidHlwZSI6InJlZnJlc2giLCJleHAiOjE2OTgzNDc2NzR9.P71t6HS1NHKsUmTSpmthEnzN0Md2WMdbcTP10Udkg3N5kNOtjO8WgKQII3L2G8hF-Gw3TnvuoYXBOXfRVM3WKg"
127.0.0.1:6379> del 1
(integer) 1
127.0.0.1:6379> keys *
(empty array)

위와 같이 파악한 명령어는 keys, get, del이 있습니다.

레디스는 key-value로 값을 저장되기 때문에, 회원 ID(PK)를 key로 하여 refresh 토큰을 value로 저장합니다.

API

테스트의 용이성을 위해 data.sql에 김볼링을 더미 데이터로 집어넣었습니다.


프론트 측에서 회원가입/로그인 api를 요청하여서 review가 안된 코드지만, 일단 이 브랜치를 기준으로 바로 배포 중입니다.

노션의 BE 아카이브에 가이드를 추가하였으니 이것도 확인 부탁드립니다!

Related Issue

Issue Number: close #11