TIL 21.11.30

그때그시절·2021년 11월 30일
0

Axios 재시도

저장된 token 을 바탕으로 rest api 통신을 진행하는중 401 에러, 즉 unauthorized 에러가 발생할 경우 토근정보만 다시 가져와서 retry 만 하게끔 할 필요가 생겼다.

axios 의 interceptor 활용

axios 가이드

restApi.interceptors.response.use(
  (response) => {
    return response;
  },
  (error: any) => {
    //unauthorized error
    if (error && error.response && error.response.status === 401) {
      window.sessionStorage.removeItem("auth-token");
      return updateToken().then((token) => {
        if (token) {
          window.sessionStorage.setItem("auth-token", token);
          error.config.headers["X-Auth-Token"] = token;
          return restApi.request(error.config);
        } else {
          return Promise.reject(error);
        }
      });
    }
    return Promise.reject(error);
  }
);

0개의 댓글