axios.js 674 B

123456789101112131415161718192021222324252627
  1. import axios from "axios";
  2. import { refreshToken } from "@/actions/auth";
  3. // import jwt_decode from "jwt-decode";
  4. const axiosJWT = axios.create();
  5. axiosJWT.interceptors.request.use(
  6. async (config) => {
  7. // const response = await refreshToken();
  8. // const decoded = jwt_decode(response.access_token);
  9. // const expire = decoded.exp;
  10. // const currentDate = Date.now();
  11. // if (expire * 1000 < currentDate) {
  12. const response = await refreshToken();
  13. config.headers = {
  14. Authorization: `Bearer ${response.access_token}`,
  15. };
  16. config.withCredentials = true;
  17. return config;
  18. // }
  19. },
  20. (error) => {
  21. return Promise.reject(error);
  22. }
  23. );
  24. export default axiosJWT;