Skip to content

Commit

Permalink
(Team-Coverflow#285)bugfix: 최초 가입 시 토큰 발행 로직 수정했습니다.
Browse files Browse the repository at this point in the history
  • Loading branch information
JayJayleee committed May 11, 2024
1 parent 357f33c commit 06086b7
Showing 1 changed file with 34 additions and 36 deletions.
70 changes: 34 additions & 36 deletions src/components/global/token/tokenManagement.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -40,54 +40,52 @@ const TokenManagement = () => {
const code = query.get('code');
const role = query.get('role');

// console.log('code:', code);
// console.log('role:', role);
console.log('code:', code);
console.log('role:', role);

if (!code || !role) {
console.error('코드 또는 역할이 URL에 포함되어 있지 않습니다.');
navigate('/login');
return;
}

fetchToken(code, role)
.then((headers) => {
const accessToken = headers.get('Authorization');
const refreshToken = headers.get('Authorization-refresh');
if (role === 'GUEST') {
console.log('약관 동의 페이지로 이동합니다.');
navigate('/login/terms', { state: code });
} else {
fetchToken(code)
.then((headers) => {
const accessToken = headers.get('Authorization');
const refreshToken = headers.get('Authorization-refresh');

// console.log('accessToken:', accessToken);
// console.log('refreshToken:', refreshToken);
if (!accessToken || !refreshToken) {
alert('토큰을 받아오는 데 실패하였습니다. 다시 시도해주세요.');
navigate('/login');
return;
}
dispatch(setTokens(accessToken, refreshToken));
localStorage.setItem(ACCESS_TOKEN, accessToken);
localStorage.setItem(REFRESH_TOKEN, refreshToken);

if (!accessToken || !refreshToken) {
alert('토큰을 받아오는 데 실패하였습니다. 다시 시도해주세요.');
navigate('/login');
return;
}
dispatch(setTokens(accessToken, refreshToken));
localStorage.setItem(ACCESS_TOKEN, accessToken);
localStorage.setItem(REFRESH_TOKEN, refreshToken);

const decoded = decodeToken(accessToken);
// const userRole = decoded.role;
const decoded = decodeToken(accessToken);

if (decoded.role === 'GUEST') {
// console.log('약관 동의 페이지로 이동합니다.');
navigate('/login/terms', { state: code });
} else if (['MEMBER', 'PREMIUM', 'ADMIN'].includes(decoded.role)) {
// console.log('회원 정보가 존재합니다. 메인 페이지로 이동합니다.');
navigate(prevPage);
initializeSSE(queryClient, dispatch);
} else {
if (['MEMBER', 'PREMIUM', 'ADMIN'].includes(decoded.role)) {
console.log('회원 정보가 존재합니다. 메인 페이지로 이동합니다.');
navigate(prevPage || '/');
initializeSSE(queryClient, dispatch);
} else {
alert('로그인에 실패하였습니다. 다시 시도해주세요.');
navigate('/login');
}
})
.catch((error) => {
console.error('토큰 요청 중 오류가 발생했습니다:', error);
alert('로그인에 실패하였습니다. 다시 시도해주세요.');
navigate('/login');
}
})
.catch((error) => {
console.error('토큰 요청 중 오류가 발생했습니다:', error);
alert('로그인에 실패하였습니다. 다시 시도해주세요.');
navigate('/login');
});
}, [navigate, location, dispatch]);
});
}
}, [navigate, location, dispatch, queryClient]);
return null;
};

export default TokenManagement;
export default TokenManagement;

0 comments on commit 06086b7

Please sign in to comment.