Skip to content

Commit 15cfad3

Browse files
committed
fix: 토큰 관리 수정
1 parent 6b6dfba commit 15cfad3

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/components/common/Gnb.tsx

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,34 @@ const Gnb = () => {
1414
const router = useRouter();
1515
const intervalId = useRef<NodeJS.Timeout | null>(null); // useRef로 intervalId 관리
1616

17+
1718
const checkAndRefreshToken = useCallback(async () => {
1819
const accessToken = getCookie('access_token');
19-
const refreshToken = getCookie('refresh');
20-
console.log('Checking tokens:', { accessToken, refreshToken }); // 로그 추가
20+
console.log(accessToken);
2121

22-
if (!accessToken && refreshToken) {
22+
// accessToken이 없을 경우 갱신 시도
23+
if (!accessToken) {
2324
try {
25+
// 새로운 accessToken 요청 시도
2426
const newAccessToken = await refreshAccessToken();
25-
setIsLoggedIn(!!newAccessToken);
27+
setIsLoggedIn(!!newAccessToken); // 새 토큰 있으면 로그인 상태 유지, 없으면 로그아웃
28+
console.log('로그인 유지 성공');
2629
} catch (error) {
2730
console.error('토큰 갱신 실패:', error);
2831
setIsLoggedIn(false);
2932
}
3033
} else {
31-
setIsLoggedIn(!!accessToken);
34+
// accessToken이 존재하면 로그인 상태 유지
35+
setIsLoggedIn(true);
3236
}
37+
3338
setIsLoading(false);
3439
}, [setIsLoggedIn]);
3540

3641
useEffect(() => {
3742
checkAndRefreshToken();
3843

39-
intervalId.current = setInterval(checkAndRefreshToken, 20 * 1000); // 50초마다 갱신 시도
44+
intervalId.current = setInterval(checkAndRefreshToken, 20 * 1000); // 20초마다 갱신 시도
4045

4146
return () => {
4247
if (intervalId.current) clearInterval(intervalId.current);

0 commit comments

Comments
 (0)