|
@@ -1,13 +1,14 @@
|
|
|
-import axiosInstance from "./api";
|
|
|
+import api from "./api";
|
|
|
import TokenService from "./token.service";
|
|
|
+import AuthService from "./auth.service";
|
|
|
|
|
|
const setup = (store) => {
|
|
|
- axiosInstance.interceptors.request.use(
|
|
|
+ api.interceptors.request.use(
|
|
|
(config) => {
|
|
|
const token = TokenService.getLocalAccessToken();
|
|
|
- if (token) {
|
|
|
+ if (token)
|
|
|
config.headers["Authorization"] = `Bearer ${token}`
|
|
|
- }
|
|
|
+
|
|
|
return config;
|
|
|
},
|
|
|
(error) => {
|
|
@@ -16,7 +17,7 @@ const setup = (store) => {
|
|
|
}
|
|
|
);
|
|
|
|
|
|
- axiosInstance.interceptors.response.use(
|
|
|
+ api.interceptors.response.use(
|
|
|
(res) => {
|
|
|
return res;
|
|
|
},
|
|
@@ -31,16 +32,14 @@ const setup = (store) => {
|
|
|
console.log("Access token expired!")
|
|
|
originalConfig._retry = true;
|
|
|
try {
|
|
|
- const response = await axiosInstance.post("/api-token-refresh/", {
|
|
|
- refresh: TokenService.getLocalRefreshToken(),
|
|
|
- });
|
|
|
-
|
|
|
- const { access } = response.data;
|
|
|
+ const { access } = await AuthService.refreshAccessToken();
|
|
|
+ console.log("New acces token: ", access)
|
|
|
|
|
|
store.dispatch('auth/refreshToken', access);
|
|
|
- TokenService.updateLocalAccessToken(access);
|
|
|
|
|
|
- return axiosInstance(originalConfig);
|
|
|
+ console.log("Retrying original request")
|
|
|
+ return api(originalConfig);
|
|
|
+
|
|
|
} catch (_error) {
|
|
|
return Promise.reject(_error);
|
|
|
}
|