ErrorNote

ErrorNote] 리액트&리덕스 토큰이 정상적으로 들어오지 않는 현상

Nerd 2021. 8. 17. 00:27
export const logInDB =
  (user_info) =>
  async (dispatch, getState, { history }) => {
    const username = user_info.username;
    const password = user_info.password;
    try {
      const login = await instance.post('/login', {
        username,
        password,
      });
      const login_info = {
        token: login.data.token,
        username: login.data.username,
      };
	  ------------------------------
        //dispatch(SetUser(login_info));
        //history.replace('/');
	// window.alert('로그인 완료!');
	// } catch (err) {
	// console.log(err);
	// }
// };
   ---------토큰을 제대로 못받은 이유-------
    setToken을 안해줌
   ------------------------------------
    <--------------수정 후------------->
      dispatch(SetUser(login_info));
      setToken(login_info.token);
      history.replace('/');
      window.alert('로그인 완료!');
    } catch (err) {
      console.log(err);
    }
  };

실수 내용 : dispatch(SetUser(login_info)) 후 setToken(login_info.token)을 해주지 않았습니다.

따라서 토큰이 들어오기는 하지만 key와 value가 전부 token으로 들어오는 현상이 나왔습니다😭

다음부터는 이런 치명적인 실수를 하지 않게끔 조심해야겠습니다.

이 실수가 무서운 이유는 회원가입과 로그인은 정상적으로 처리됩니다.

하지만 글 등록을 할 때 토큰을 서버에 넘겨줘야하는데 그때 비정상적인 토큰을 넘겨

500 에러가 발생합니다...!