새로고침시 자동 로그아웃 에러

윤성준·2023년 9월 20일
0

first react project

목록 보기
5/17

react 프로젝트를 하는 중 서버가 다운되면서 로그인이 풀리는 현상이 계속해서 일어났다.

reudx 쪽에서 logoutUser의 return 값에 isInit: true 를 추가해줬다.

헤더쪽의 로그아웃을 눌렀을때 logout 액션을 취해주고

auth_guard_component.jsx 에서 user.init == false 인 경우 로딩중을 리턴해주는 코드를 입력해줬더니 문제가 해결됐다.

user.store.js

logoutUser: () => {
            clearAccessToken();
            axios.defaults.headers.common['Authorization'] = null
            return { ...userInitialState, isInit: true }
        }
header.layout.jsx

const logOut = () => {
    dispatch(logoutUser());
  };
auth_guard_component.jsx

const AuthGaurdComponent = ({ children }) => {
  const user = useSelector((rootState) => rootState.user);

  if (!user.isInit) {
    return <div>Loading...</div>;
  } else if (user.id) {
    return children;
  } else {
    console.log("not user");
    return <Navigate to="/login/member_login" replace={true}></Navigate>;
  }
};
profile
반갑습니다

0개의 댓글