Cześć, chciałem zapytać czy takie odświeżanie tokenu jwt w vue jest ok czy powinno być to ogarnięte w inny sposób?

let jwtToken = localStorage.getItem('token');
if (jwtToken){
  setHeaderToken();
  axios.interceptors.response.use(function (response) {
    return response;
  }, function (error) {
    if (error.response.status === 401) {
      refreshToken();
    }
  })
}

function setHeaderToken() {
  axios.defaults.headers.common['Authorization'] = 'Bearer ' + localStorage.getItem('token');
}

function refreshToken() {
  axios.post('refresh-token')
    .then((data) => {
      localStorage.setItem('token', data.data.access_token);
      setHeaderToken();
    })
    .catch(() => {
      localStorage.removeItem('token');
      localStorage.removeItem('userId');
      return this.$router.push({path: '/'});
    })
}