Skip to content

Commit ae2828c

Browse files
bikoojuCoen90주현준coen
authored
cookie path /로 수정 및 userDetails NPE 해결
* refactor: 이미지 업로드 변경 (비동기 -> 동기) (#26) * ✨ 내가 생성한 모임과 가입한 모임 리스트 조회 기능 구현 * ♻️ 내가 생성한/가입한 모임 api는 인증 필수 * ♻️ 코드 리팩토링 * ♻️ 간단한 페이징 처리 응답 dto로 적용 * ♻️ 게시글 수정시 삭제할 이미지 필드 보내게끔 수정 및 이미지 삭제시 s3와 DB에서 삭제 * ♻️ fetch join으로 추가쿼리 발생하지 않게 수정 * ♻️ feature/crew -> temp로 pr (#28) * ♻️ 현재 참여자수 필드 추가 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ♻️ null이 아닌 경우 없으므로 null 조건 삭제 * ♻️ if 한 줄이어도 중괄호 사용으로 수정 * ♻️ 허용 엔드포인트 수정 * ♻️ 코드 리팩토링 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ✨ 모임 가입 API 구현 * ♻️ 모임 가입 API 코드 수정 * ♻️ entity에 currentMemberCount 추가 및 에러코드 추가 * ♻️ 에러코드 추가 * ♻️ 모임가입 API 적용하여 특정 모임과 모임리스트 조회 처리 * ♻️ 도메인 swagger와 프론트 배포주소 CORS 허용 (#20) * ✨ 모임 수정 api 구현 및 에러코드 추가 * ✨ 모임 수정 삭제 api 구현 및 모임 수정 api 로직 수정 * ♻️ 주석 정리 * ♻️ 코드 리팩토링 * ♻️ Redis Password 삭제 * ♻️ Redis Password 삭제 * ♻️ 코드 리팩토링 * ♻️ Auth 삭제 및 fetch join List 2개 오류로 platformUrl 조인 삭제 * ✨ 모임 가입, 수정, 삭제 api 구현 및 redis 설정과 일부 수정 (#23) * ♻️ 도메인 swagger와 프론트 배포주소 CORS 허용 * feat: 레디스 관련 설정 추가 및 일부 수정 (#19) * feat: 레디스 설정 추가 * feat: Redis Properties 개발 * refactor: categories 리스트 형식으로 받도록 변경 * refactor: categories 리스트 형식으로 받도록 변경 * feat: redis 관련 설정 변경 및 예시 코드 추가 * feat: redis key를 위한 상수 클래스 추가 * feat: redis 비밀번호 추가 * refactor: User 관련 수정 * docs: 주석 제거 * docs: 불필요한 주석 제거 * chore: optimize import * refactor: command, enums 위치 변경 * refactor: CustomUserDetails interface 생성하여 핸들링하도록 변경 * refactor: 현재 유저 닉네임과 같은 경우 예외 발생하지 않도록 변경 * fix: 유저 에러 코드 수정 * fix: 검증로직 보완 * refactor: 중복 로직 재사용 * refactor: 잘못 응답된 UserDetails 수정 * fix: 미인가 상태에서 security filter 통과하는 오류 수정 --------- Co-authored-by: coen <coen@mrblue.com> * ✨ 모임 가입 , 모임 수정, 삭제 api 구현 (#21) * ♻️ 현재 참여자수 필드 추가 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ♻️ null이 아닌 경우 없으므로 null 조건 삭제 * ♻️ if 한 줄이어도 중괄호 사용으로 수정 * ♻️ 허용 엔드포인트 수정 * ♻️ 코드 리팩토링 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ✨ 모임 가입 API 구현 * ♻️ 모임 가입 API 코드 수정 * ♻️ entity에 currentMemberCount 추가 및 에러코드 추가 * ♻️ 에러코드 추가 * ♻️ 모임가입 API 적용하여 특정 모임과 모임리스트 조회 처리 * ✨ 모임 수정 api 구현 및 에러코드 추가 * ✨ 모임 수정 삭제 api 구현 및 모임 수정 api 로직 수정 * ♻️ 주석 정리 * ♻️ 코드 리팩토링 * ♻️ Redis Password 삭제 * ♻️ Redis Password 삭제 * ♻️ 코드 리팩토링 --------- Co-authored-by: 주현준 <hjjo@dsmentoring.com> * ♻️ Auth 삭제 및 fetch join List 2개 오류로 platformUrl 조인 삭제 (#22) * ♻️ 현재 참여자수 필드 추가 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ♻️ null이 아닌 경우 없으므로 null 조건 삭제 * ♻️ if 한 줄이어도 중괄호 사용으로 수정 * ♻️ 허용 엔드포인트 수정 * ♻️ 코드 리팩토링 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ✨ 모임 가입 API 구현 * ♻️ 모임 가입 API 코드 수정 * ♻️ entity에 currentMemberCount 추가 및 에러코드 추가 * ♻️ 에러코드 추가 * ♻️ 모임가입 API 적용하여 특정 모임과 모임리스트 조회 처리 * ✨ 모임 수정 api 구현 및 에러코드 추가 * ✨ 모임 수정 삭제 api 구현 및 모임 수정 api 로직 수정 * ♻️ 주석 정리 * ♻️ 코드 리팩토링 * ♻️ Redis Password 삭제 * ♻️ Redis Password 삭제 * ♻️ 코드 리팩토링 * ♻️ Auth 삭제 및 fetch join List 2개 오류로 platformUrl 조인 삭제 --------- Co-authored-by: 주현준 <hjjo@dsmentoring.com> --------- Co-authored-by: 주현준 <hjjo@dsmentoring.com> Co-authored-by: Coen90 <81370558+Coen90@users.noreply.github.com> Co-authored-by: coen <coen@mrblue.com> * ♻️ 페이징에서 EntityGraph와 GROUP BY 함께 쓰면 모임 멤버 컬렉션이 비어지는 문제 해결 * ✨ 내가 생성한 모임과 가입한 모임 리스트 조회 기능 구현 * ♻️ 내가 생성한/가입한 모임 api는 인증 필수 * ♻️ 코드 리팩토링 * ♻️ 간단한 페이징 처리 응답 dto로 적용 * ♻️ 게시글 수정시 삭제할 이미지 필드 보내게끔 수정 및 이미지 삭제시 s3와 DB에서 삭제 * ♻️ fetch join으로 추가쿼리 발생하지 않게 수정 --------- Co-authored-by: coen <bht9011@gmail.com> Co-authored-by: 주현준 <hjjo@dsmentoring.com> Co-authored-by: Coen90 <81370558+Coen90@users.noreply.github.com> Co-authored-by: coen <coen@mrblue.com> * ✨ QueryDsl 활용하여 모임 검색 기능 구현 * ✨ 모임 탈퇴 기능 구현 및 QueryDsl 활용하여 모임 검색 기능 구현 * ✨ 모임 탈퇴 기능 구현 및 모임 검색 기능 구현 * refactor: 이미지 업로드 변경 (비동기 -> 동기) (#26) * ✨ 내가 생성한 모임과 가입한 모임 리스트 조회 기능 구현 * ♻️ 내가 생성한/가입한 모임 api는 인증 필수 * ♻️ 코드 리팩토링 * ♻️ 간단한 페이징 처리 응답 dto로 적용 * ♻️ 게시글 수정시 삭제할 이미지 필드 보내게끔 수정 및 이미지 삭제시 s3와 DB에서 삭제 * ♻️ fetch join으로 추가쿼리 발생하지 않게 수정 * ♻️ feature/crew -> temp로 pr (#28) * ♻️ 현재 참여자수 필드 추가 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ♻️ null이 아닌 경우 없으므로 null 조건 삭제 * ♻️ if 한 줄이어도 중괄호 사용으로 수정 * ♻️ 허용 엔드포인트 수정 * ♻️ 코드 리팩토링 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ✨ 모임 가입 API 구현 * ♻️ 모임 가입 API 코드 수정 * ♻️ entity에 currentMemberCount 추가 및 에러코드 추가 * ♻️ 에러코드 추가 * ♻️ 모임가입 API 적용하여 특정 모임과 모임리스트 조회 처리 * ♻️ 도메인 swagger와 프론트 배포주소 CORS 허용 (#20) * ✨ 모임 수정 api 구현 및 에러코드 추가 * ✨ 모임 수정 삭제 api 구현 및 모임 수정 api 로직 수정 * ♻️ 주석 정리 * ♻️ 코드 리팩토링 * ♻️ Redis Password 삭제 * ♻️ Redis Password 삭제 * ♻️ 코드 리팩토링 * ♻️ Auth 삭제 및 fetch join List 2개 오류로 platformUrl 조인 삭제 * ✨ 모임 가입, 수정, 삭제 api 구현 및 redis 설정과 일부 수정 (#23) * ♻️ 도메인 swagger와 프론트 배포주소 CORS 허용 * feat: 레디스 관련 설정 추가 및 일부 수정 (#19) * feat: 레디스 설정 추가 * feat: Redis Properties 개발 * refactor: categories 리스트 형식으로 받도록 변경 * refactor: categories 리스트 형식으로 받도록 변경 * feat: redis 관련 설정 변경 및 예시 코드 추가 * feat: redis key를 위한 상수 클래스 추가 * feat: redis 비밀번호 추가 * refactor: User 관련 수정 * docs: 주석 제거 * docs: 불필요한 주석 제거 * chore: optimize import * refactor: command, enums 위치 변경 * refactor: CustomUserDetails interface 생성하여 핸들링하도록 변경 * refactor: 현재 유저 닉네임과 같은 경우 예외 발생하지 않도록 변경 * fix: 유저 에러 코드 수정 * fix: 검증로직 보완 * refactor: 중복 로직 재사용 * refactor: 잘못 응답된 UserDetails 수정 * fix: 미인가 상태에서 security filter 통과하는 오류 수정 --------- Co-authored-by: coen <coen@mrblue.com> * ✨ 모임 가입 , 모임 수정, 삭제 api 구현 (#21) * ♻️ 현재 참여자수 필드 추가 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ♻️ null이 아닌 경우 없으므로 null 조건 삭제 * ♻️ if 한 줄이어도 중괄호 사용으로 수정 * ♻️ 허용 엔드포인트 수정 * ♻️ 코드 리팩토링 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ✨ 모임 가입 API 구현 * ♻️ 모임 가입 API 코드 수정 * ♻️ entity에 currentMemberCount 추가 및 에러코드 추가 * ♻️ 에러코드 추가 * ♻️ 모임가입 API 적용하여 특정 모임과 모임리스트 조회 처리 * ✨ 모임 수정 api 구현 및 에러코드 추가 * ✨ 모임 수정 삭제 api 구현 및 모임 수정 api 로직 수정 * ♻️ 주석 정리 * ♻️ 코드 리팩토링 * ♻️ Redis Password 삭제 * ♻️ Redis Password 삭제 * ♻️ 코드 리팩토링 --------- Co-authored-by: 주현준 <hjjo@dsmentoring.com> * ♻️ Auth 삭제 및 fetch join List 2개 오류로 platformUrl 조인 삭제 (#22) * ♻️ 현재 참여자수 필드 추가 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ♻️ null이 아닌 경우 없으므로 null 조건 삭제 * ♻️ if 한 줄이어도 중괄호 사용으로 수정 * ♻️ 허용 엔드포인트 수정 * ♻️ 코드 리팩토링 * ♻️ 특정 모임 및 모임 리스트 조회 토큰 없이도 조회 가능하게 수정 * ♻️ 필요한 api만 허용 * ✨ 모임 가입 API 구현 * ♻️ 모임 가입 API 코드 수정 * ♻️ entity에 currentMemberCount 추가 및 에러코드 추가 * ♻️ 에러코드 추가 * ♻️ 모임가입 API 적용하여 특정 모임과 모임리스트 조회 처리 * ✨ 모임 수정 api 구현 및 에러코드 추가 * ✨ 모임 수정 삭제 api 구현 및 모임 수정 api 로직 수정 * ♻️ 주석 정리 * ♻️ 코드 리팩토링 * ♻️ Redis Password 삭제 * ♻️ Redis Password 삭제 * ♻️ 코드 리팩토링 * ♻️ Auth 삭제 및 fetch join List 2개 오류로 platformUrl 조인 삭제 --------- Co-authored-by: 주현준 <hjjo@dsmentoring.com> --------- Co-authored-by: 주현준 <hjjo@dsmentoring.com> Co-authored-by: Coen90 <81370558+Coen90@users.noreply.github.com> Co-authored-by: coen <coen@mrblue.com> * ♻️ 페이징에서 EntityGraph와 GROUP BY 함께 쓰면 모임 멤버 컬렉션이 비어지는 문제 해결 * ✨ 내가 생성한 모임과 가입한 모임 리스트 조회 기능 구현 * ♻️ 내가 생성한/가입한 모임 api는 인증 필수 * ♻️ 코드 리팩토링 * ♻️ 간단한 페이징 처리 응답 dto로 적용 * ♻️ 게시글 수정시 삭제할 이미지 필드 보내게끔 수정 및 이미지 삭제시 s3와 DB에서 삭제 * ♻️ fetch join으로 추가쿼리 발생하지 않게 수정 --------- Co-authored-by: coen <bht9011@gmail.com> Co-authored-by: 주현준 <hjjo@dsmentoring.com> Co-authored-by: Coen90 <81370558+Coen90@users.noreply.github.com> Co-authored-by: coen <coen@mrblue.com> * feat: 모임 약속 생성 * feat: 모임 약속 생성 API 개발 * feat: jwt 토큰 응답 및 안정성 개선 * feat: 약속 수정 API 개발 * feat: 약속 삭제 API 개발 * feat: 약속 참가 API 개발 * feat: 약속 참가 API 개발 * feat: 약속 참가 취소 API 개발 * refactor: 약속 삭제 연관관계 추가 * chore: optimize import * feat: 약속 조회 API 개발 * chore: API 순서 변경 * refactor: API 응답값 변경 * refactor: API 응답값 변경 * fix: 약속 생성 후 영속성 컨텍스트 flush 로직 추가 * ✨ QueryDsl 활용하여 모임 검색 기능 구현 * ✨ 모임 탈퇴 기능 구현 및 QueryDsl 활용하여 모임 검색 기능 구현 --------- Co-authored-by: Coen90 <81370558+Coen90@users.noreply.github.com> Co-authored-by: coen <bht9011@gmail.com> Co-authored-by: 주현준 <hjjo@dsmentoring.com> Co-authored-by: coen <coen@mrblue.com> * ♻️ S3에서 이미지 url 가져오는 메서드 추가 * ✨ 특정 모임의 모임원들 조회 기능 구현 및 모임 검색 기능에서 이스케이프 문자 처리와 카테고리, 정렬 추가 * ♻️ import 추가안해서 추가 * ♻️ 페이징 응답에 마지막페이지 유무 추가 * ⚙️ docker 추가 * ⚙️ docker 세팅 * ⚙️ dockerfile 수정 * ♻️ dev_deploy 도커 사용으로 수정 * ♻️ dev_deploy 도커 사용으로 수정 * ♻️ dev_deploy 도커 사용으로 수정 * ♻️ dev_deploy 도커 사용으로 수정 * ♻️ dev_deploy 도커 사용으로 수정 * ♻️ env 참조하도록 수정 * ♻️ 환경변수를 env로 생성 * ♻️ 서버 컨테이너 삭제 * ♻️ accessToken 응답 body말고 쿠키로 변경 * ♻️ accessToken 쿠키로 변경 및 로그아웃 api 구현 * ♻️ Tag 설정 * ♻️ env참조 삭제 * ♻️ refresh api 응답 body에서 쿠키로 변경 * ♻️ 에러처리가 비즈니스 에러까지 내려가서 토큰 없으면 UnknownUser 반환하지 않도록 삭제 * ♻️ 주석 정리 * 🐛 userDetails NPE 오류 해결 * ♻️ 토큰 없거나 만료 에러 처리 * ♻️ cookie path /로 설정 * 🐛 userDetails.isLoggedIn()에서 NPE 해결 --------- Co-authored-by: Coen90 <81370558+Coen90@users.noreply.github.com> Co-authored-by: coen <bht9011@gmail.com> Co-authored-by: 주현준 <hjjo@dsmentoring.com> Co-authored-by: coen <coen@mrblue.com>
1 parent 62b2fcd commit ae2828c

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

src/main/java/org/codeit/roomunion/auth/adapter/in/web/AuthController.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ private Cookie createAccessTokenCookie(String accessToken) {
6666
Cookie cookie = new Cookie(ACCESS_TOKEN_COOKIE_NAME, accessToken);
6767
cookie.setHttpOnly(true);
6868
cookie.setSecure(cookieSecure);
69-
cookie.setPath("/api");
69+
cookie.setPath("/");
7070
cookie.setMaxAge(ACCESS_TOKEN_COOKIE_MAX_AGE);
7171
cookie.setAttribute("SameSite", "None");
7272
return cookie;
@@ -76,7 +76,7 @@ private Cookie createRefreshTokenCookie(String refreshToken, HttpServletResponse
7676
Cookie cookie = new Cookie(REFRESH_TOKEN_COOKIE_NAME, refreshToken);
7777
cookie.setHttpOnly(true);
7878
cookie.setSecure(cookieSecure);
79-
cookie.setPath("/api");
79+
cookie.setPath("/");
8080
cookie.setMaxAge(REFRESH_TOKEN_COOKIE_MAX_AGE);
8181
cookie.setAttribute("SameSite", "Lax");
8282
return cookie;
@@ -121,7 +121,7 @@ private void deleteCookie(String name, String sameSite, HttpServletResponse resp
121121
Cookie cookie = new Cookie(name, null);
122122
cookie.setHttpOnly(true);
123123
cookie.setSecure(cookieSecure);
124-
cookie.setPath("/api");
124+
cookie.setPath("/");
125125
cookie.setMaxAge(0);
126126
cookie.setAttribute("SameSite", sameSite);
127127
response.addCookie(cookie);

src/main/java/org/codeit/roomunion/meeting/application/service/MeetingService.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,9 @@ public String leave(Long meetingId, CustomUserDetails userDetails) {
150150

151151
@Override
152152
public Meeting getByMeetingId(Long meetingId, CustomUserDetails userDetails) {
153-
Long currentUserId = userDetails.isLoggedIn() ? userDetails.getUser().getId() : 0L;
153+
Long currentUserId = (userDetails != null && userDetails.isLoggedIn())
154+
? userDetails.getUser().getId()
155+
: 0L;
154156
Meeting meeting = meetingRepository.findByIdWithJoined(meetingId, currentUserId);
155157
return getMeetingWithBadges(meeting);
156158
}

0 commit comments

Comments
 (0)