vue项目挂载路由导航守卫
// 挂载路由导航守卫
router.beforeEach((to, from, next) => {
if (to.path == "/login") {
next();
} else {
let token = window.sessionStorage.getItem("token");
let userId = window.sessionStorage.getItem("userId");
if (token == null || token == "") {
next("/login");
} else if (to.path === "/adminHome/organization/devPageManage") {
if (userId == "1") {
next();
} else {
next("/login");
}
} else {
console.log(to.path);
next();
}
}
});
vue项目封装axios请求
//新建一个utils文件,创建http.js接口统一管理文件
// 导入axios
import axios from "axios";
import ElementUI from "element-ui";
// import store from '../store/index'
const http = axios.create({
baseURL: "/api",
// baseURL: "http://192.168.16.43:10001",
// 正式地址
// baseURL:'http://255.255.255.2435/task',
timeout: 60000,
});
// 请求拦截器
http.interceptors.request.use((config) => {
// store.state.loading = true
config.data = {
...config.data,
};
// console.log(config);
if (config.url != "/security/user/login") {
config.headers = {
token: window.sessionStorage.getItem("token"),
};
}
return config;
});
// 响应拦截器
http.interceptors.response.use(
(res) => {
// store.state.loading = false
if (res.data.code == 201) {
ElementUI.Message({
message: res.data.msg,
type: "error",
});
return res.data;
}
return res.data;
},
(error) => {
//返回错误信息 服务器状态码报500
if (error.response.status == 500) {
// store.state.loading = false
ElementUI.Message({
message: "服务器异常",
type: "error",
});
}
return error.response.status;
}
);
export default http;