Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Axios config 이슈 #148

Open
0gunkim opened this issue Aug 4, 2023 · 6 comments
Open

Axios config 이슈 #148

0gunkim opened this issue Aug 4, 2023 · 6 comments

Comments

@0gunkim
Copy link
Contributor

0gunkim commented Aug 4, 2023

스크린샷 2023-08-04 오후 3 04 24

axiosConfig와 reissue 요청 이슈인데 우선적으로 해결이 가능할까요?

팡규님이 연결하신 axios instanc를 보니 제가 작성한 코드가 아니라서 담당하셨던 분이 확인을 하셔야하는데 첫페이지고 공통적으로 사용하는 컴포넌트면 우선적으로 해결해야 할 것 같습니다.

@new-crystal
Copy link
Contributor

new-crystal commented Aug 5, 2023

export const reissueToken = async () => {
  try {
    const response = await axios.post(
      `${process.env.REACT_APP_ENDPOINT}user/reissue`,{},
      {
        headers: {
          Authorization: `Bearer ` + localStorage.getItem("refresh_token"),
        },
      }
    );
    return response;
  } catch (error) {
    throw new Error("토큰 발급에 실패했습니다.");
  }
export const postReIssue = async (stableRefesh: {}) => {
  try {
    const url = `user/reissue`;
    const options = {
      method: "post",
      data:{},
      headers: {
        Authorization: `Bearer ${stableRefesh}`,
      },
    };
    const response = await axiosClient.axios(url, options);
    console.log(response)
    //@ts-ignore
    const newAccessToken = response.data?.data?.accessToken;
    //@ts-ignore
    localTokenRepoInstance.setAccess(newAccessToken);
    //@ts-ignore
    return newAccessToken;
  } catch (error) {
    throw new Error(`POST REISSUE Error[토큰 발급 실패]: ${error}`);
  }
};

body에 빈 배열을 넣어 헤더에 정확하게 들어가도록 수정했습니다.
스크린샷 2023-08-05 오후 3 37 39

@0gunkim
Copy link
Contributor Author

0gunkim commented Aug 5, 2023

miganziService 다시 기존으로 커밋하고 로그인, 로그아웃 주석처리했습니다

@0gunkim
Copy link
Contributor Author

0gunkim commented Aug 6, 2023

axiosConfig 토큰업데이트 이슈 언제 해결될까요

@pangkyu
Copy link
Member

pangkyu commented Aug 12, 2023

image

아직 해당 이슈 해결이 안됐는데,

export const reissueToken = async () => {
  try {
    const response = await axios.post(
      `${process.env.REACT_APP_ENDPOINT}user/reissue`,{},
      {
        headers: {
          Authorization: `Bearer ` + localStorage.getItem("refresh_token"),
        },
      }
    );
    return response;
  } catch (error) {
    try{
      const response = await axios.post(`${process.env.REACT_APP_ENDPOINT}user/logout`,{})
      localStorage.clear();
      alert("만료시간이 종료 되었습니다. 재로그인 부탁드립니다.")
    }catch(error){
      throw new Error("토큰 발급에 실패했습니다.");
    }
  }
};

catch문에 있는 response가 어디에 쓰이는 지 모르겠는데 해당 부분을 로컬스토리지 클리어한 뒤에 다시 로컬스토리지에 넣어주는 로직일까요?

일단 수수한테 말씀드려가지고 주말안으로 처리해주신다고 하셔서 처리하신 다음에 다시 테스트 해보겠습니다.

@Blue-Kite
Copy link
Member

저도 해당 에러가 발생해 다른 페이지로 넘어갈 수 없었습니다. 로그인 없이도 메인의 데이터를 불러와야하는데 그때도 토큰이 필요한 코드인거 같아서 임의로 axiosConfig.ts의 createAxiosInstance의 헤더 부분을 주석 처리하고 작업했습니다. 해결하시고 바꿔주시면 감사하겠습니다.

@new-crystal
Copy link
Contributor

12fc591f-4f2e-4176-93a2-de2bc5d5659c.mp4

현재 로그아웃 하고 로컬스토리지가 비어있는 상태에서 에러 없이 메인 화면 보이는 코드로 업데이트 하겠습니다!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants