inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

코드로 배우는 React 19 with 스프링부트 API서버

Refresh Token과 자동갱신

질문이있습니다

210

김우철

작성한 질문수 15

0

섹션8에 axios인터셉터와 access토큰 보고있습니다

 

여기서 지금 todo나 product를 클릭하면 오류나는데

jwtfilter에서

String accessToken = authHeaderStr.substring(7);

이부분에서 request.getHeader ==null 이라 오류가뜨는데

음.,..이게 mainpage나 about페이지에서는 왜오류가 안나는 지 궁금합니다...왜냐면 OncePerRequestFilter 를 상속받아서

if(path.startsWith("/api/member/")){
    return true;
}

조건문을 member만 필터 제외시킨거같은데...

 

 

react spring-boot jpa jwt redux-toolkit

답변 3

1

구멍가게코딩단

Todo나 Product 관련된 호출은 JWT가 필요한 호출입니다.

axios.get( )이 아니라 유틸로 만들어둔 jwtAxios를 이용하셔서 호출하셔야 합니다.

0

김우철

아 메인페이지나 어바웃페이지는 axios 통신을ㄹ 안하는군요.,....하 죄송합니다 ㅠㅠㅋㅋㅋㅋㅋㅋㅋㅋ

0

인프런 AI 인턴

안녕하세요, 김우철님. 인프런 AI 인턴입니다.

말씀해 주신 상황을 보니, JWT 필터링 과정에서 request.getHeader()null을 반환하여 오류가 발생하고 있는 것 같습니다. 이에 대한 몇 가지 점을 살펴보겠습니다.

문제의 원인

  1. 헤더가 없는 요청: authHeaderStr.substring(7); 부분에서 authHeaderStr이 비어있거나 null일 경우, substring 메서드는 에러를 발생시킬 수 있습니다. 이는 사용자가 인증이 필요한 페이지로 접속할 때 JWT 토큰이 헤더에 포함되지 않아서 발생할 수 있습니다.

  2. MainPage와 AboutPage와의 차이: mainpageabout 페이지는 인증이 필요 없는 경로로 설정되었거나, API 요청이 없을 수 있습니다. 반면 todoproduct는 API 요청을 통해 데이터를 가져오며, 이 과정에서 인증이 필요할 가능성이 있습니다. 따라서 JWT가 필요 없거나 제외된 페이지에서는 오류가 발생하지 않을 수 있습니다.

해결 방법

  1. JWT 필터 예외 처리: getHeader()의 결과가 null인 경우를 대비한 예외 처리를 추가하여, 조건문으로 토큰이 없을 경우를 처리해 주세요.

    String authHeaderStr = request.getHeader("Authorization");
    if (authHeaderStr == null || !authHeaderStr.startsWith("Bearer ")) {
        return;
    }
    
  2. 필터 적용 경로 확인: shouldNotFilter 메서드에서 필터가 적용되지 않을 대상을 명확히 확인하여 필요한 경로에 대해서만 필터가 작동하도록 조정 주세요.

관련하여 도움이 될 수 있는 기존 답변을 추천해 드릴게요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해 드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

동일하게 실습하는데 이상하게 페이지를 찾지 못하네요..

0

74

2

22. REST 방식 컨트롤러 만들기(2), 29. 등록처리 부분 질문이 있습니다.

0

74

2

37강. 강의수업듣다 질문드립니다.

0

57

2

TodoDTO test 함수

0

80

3

강사님 오타 있음요

0

77

2

No 1. 교제(ppt) soruce 복붙 문제 의 건

0

95

4

No 1. 교제(ppt) soruce 복붙 문제 의 건

0

70

3

17강 문의드립니다.

0

44

1

카카오 연동설정이 이제 안되는거 같아요

0

190

2

8장 마지막 강의 시 오류

0

98

4

혹시 뭐가 문제인지 알 수 있나요?

0

87

2

챕터: React-Router 설정

0

58

2

백)TODO관련

0

56

2

마리아 db 설치중 포트를 이미 사용중이라고 합니다

0

112

2

이강의 듣고 소화시켰다면 몇년차 정도 개발자라고 할수 있을까요?

0

105

1

CSR , SSR 의 수요 궁금증 질문

0

83

2

섹션5부터...

0

73

1

간단한 코드 질문!!

0

61

2

tbl_todo 질문입니다

0

65

2

수업 외 질문인데 'tbl'이 무슨 의미인가요???

0

292

2

엔티티클래스에서 질문입니다

0

78

2

수정시 writer값이 삭제되는 오류

0

42

2

교안 31 오타 수정해주세요

0

64

2

쿠키에 accessToken, refreshToken을 담고, 조회 시에 undefined

0

80

1