roboflex-thalamus-request-handler
Version:
Biblioteca responsavel por manipular e padronizar as requisiçoes para o backend
44 lines (37 loc) • 1.06 kB
text/typescript
import axios from "axios";
import { sso } from "roboflex-thalamus-sso-lib";
const api = axios.create({
baseURL: process.env.VUE_APP_ROOT_API,
});
function enviarUsuarioLogin() {
const buildMode = process.env.NODE_ENV;
if (buildMode === "production") {
window.location.href = "https://portal.thalamus.ind.br/#/login";
} else {
window.location.href = "http://portal-homologacao.thalamus.ind.br/#/login";
}
}
api.interceptors.request.use(
(config) => {
const usuarioLogado = sso.getUsuarioLogado();
if (usuarioLogado != null) {
config.headers.Authorization = `${usuarioLogado.tokenType} ${usuarioLogado.token}`;
} else {
return Promise.reject("Token inválido");
}
return config;
},
(error) => {
return Promise.reject(error);
}
);
api.interceptors.response.use(
(response) => response,
(error) => {
if (error.response && error.response.status === 401) {
enviarUsuarioLogin();
}
return Promise.reject(error);
}
);
export default api;