| | |
| | | import request from '@/router/axios'; |
| | | import website from "@/config/website"; |
| | | |
| | | export const loginInfoByToken = () => request({ |
| | | url: '/api/blade-auth/getuser/token', |
| | | method: 'get', |
| | | }); |
| | | |
| | | export const loginByUsername = (tenantId, deptId, roleId, username, password, type, key, code) => request({ |
| | | url: '/api/blade-auth/oauth/token', |
| | | method: 'post', |
| | |
| | | import {getToken} from '@/util/auth' |
| | | import NProgress from 'nprogress' // progress bar |
| | | import 'nprogress/nprogress.css' // progress bar style |
| | | import {loginInfoByToken} from '@/api/user' |
| | | import {Message} from "element-ui"; |
| | | NProgress.configure({showSpinner: false}); |
| | | const lockPage = store.getters.website.lockPage; //锁屏页 |
| | | router.beforeEach((to, from, next) => { |
| | |
| | | if (meta.isAuth === false) { |
| | | next() |
| | | } else { |
| | | next('/login') |
| | | // 需要判断是否单点登录 |
| | | let token = window.sessionStorage.getItem('token') |
| | | if (token) { |
| | | loginInfoByToken.then(res => { |
| | | const data = res.data; |
| | | if (data.error_description) { |
| | | Message({ |
| | | message: data.error_description, |
| | | type: 'error' |
| | | }) |
| | | } else { |
| | | this.$store.commit('SET_TOKEN', data.access_token); |
| | | this.$store.commit('SET_REFRESH_TOKEN', data.refresh_token); |
| | | this.$store.commit('SET_TENANT_ID', data.tenant_id); |
| | | this.$store.commit('SET_USER_INFO', data); |
| | | this.$store.commit('DEL_ALL_TAG'); |
| | | this.$store.commit('CLEAR_LOCK'); |
| | | next(to.path) |
| | | } |
| | | |
| | | }) |
| | | } else { |
| | | next('/login') |
| | | } |
| | | } |
| | | } |
| | | }) |
| | |
| | | if (getToken() && !isToken) { |
| | | config.headers[website.tokenHeader] = 'bearer ' + getToken() |
| | | } |
| | | // 获取统一登录携带的token |
| | | const tokensso = window.sessionStorage.getItem('token') |
| | | if (tokensso) { |
| | | config.headers[website.tokenHeader] = 'bearer ' + tokensso |
| | | } |
| | | //headers中配置text请求 |
| | | if (config.text === true) { |
| | | config.headers["Content-Type"] = "text/plain"; |
| | |
| | | content, |
| | | type, |
| | | } = params; |
| | | if (name == 'token' || name == 'refreshToken') { |
| | | window.sessionStorage.setItem(name, content); |
| | | window.localStorage.setItem(name, content); |
| | | } |
| | | name = keyName + name |
| | | let obj = { |
| | | dataType: typeof (content), |
| | |
| | | /** |
| | | * 获取localStorage |
| | | */ |
| | | |
| | | export const getStore = (params = {}) => { |
| | | let { |
| | | name, |
| | |
| | | window.localStorage.clear() |
| | | } |
| | | |
| | | } |
| | | } |
| | |
| | | |
| | | module.exports = { |
| | | //路径前缀 |
| | | publicPath: "/", |
| | | publicPath: "/zhny-web", |
| | | lintOnSave: true, |
| | | productionSourceMap: false, |
| | | chainWebpack: (config) => { |
| | |
| | | }, |
| | | //开发模式反向代理配置,生产模式请使用Nginx部署并配置反向代理 |
| | | devServer: { |
| | | // 本地配置host生效 |
| | | disableHostCheck:true, |
| | | port: 1888, |
| | | proxy: { |
| | | '/api': { |
| | | //本地服务接口地址 |
| | | // target: 'http://192.168.0.126:89', |
| | | target: 'http://192.168.0.207:89', |
| | | //远程演示服务地址,可用于直接启动项目 |
| | | target: 'http://182.106.212.58:8013/api', |
| | | // target: 'http://182.106.212.58:8013/api', |
| | | ws: true, |
| | | pathRewrite: { |
| | | '^/api': '/' |
| | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |