userIdx는 사용자idx, toUserIdx는 타겟의 idx이다.
ERD는 이렇게 구성 할 수 있었다.
INSERT INTO Follow (userIdx, toUserIdx) VALUES (?,?)
위는 sql문이다.
try{
//jwt에서 idx 추출.
int userIdxByJwt = jwtService.getUserIdx();
//userIdx와 접근한 유저가 같은지 확인
if(postFollowReq.userIdx != userIdxByJwt){
return new BaseResponse<>(INVALID_USER_JWT);
}
PostFollowRes postFollowRes = userService.postFollow(postFollowReq);
user controller 부분에서는 jwt토큰을 받아서 body로 넘어온 userIdx와 비교하는 과정을 거친다.
회원전용 API를 만드는게 쉽지 않았지만 만들어보니 나머지 기능도 추가할 수 있을 것 같다.