|
|
|
|
@ -8,6 +8,7 @@ import {validatenull} from '@/util/validate' |
|
|
|
|
import { getToken } from '@/util/auth' |
|
|
|
|
import NProgress from 'nprogress' // progress bar
|
|
|
|
|
import 'nprogress/nprogress.css' // progress bar style
|
|
|
|
|
import { MessageBox } from 'element-ui'; |
|
|
|
|
NProgress.configure({ showSpinner: false }); |
|
|
|
|
const lockPage = store.getters.website.lockPage; //锁屏页
|
|
|
|
|
router.beforeEach((to, from, next) => { |
|
|
|
|
@ -53,9 +54,58 @@ router.beforeEach((to, from, next) => { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
console.log('nologin===permission===========',to.path) |
|
|
|
|
console.log('nologin===permission===========', to,from) |
|
|
|
|
const ssotoken = to.query.SSOToken; |
|
|
|
|
if (process.env.NODE_ENV == "production" && to.path != '/newlogin') { |
|
|
|
|
//过滤ssotoken重新拼接回调地址
|
|
|
|
|
let newQuery = JSON.parse(JSON.stringify(to.query)); |
|
|
|
|
delete newQuery.SSOToken; |
|
|
|
|
let fallbackUrl = window.location.href.substring(0, window.location.href.indexOf("?")); |
|
|
|
|
let keys = Object.keys(newQuery); |
|
|
|
|
for (let i = 0; i < keys.length; i++) { |
|
|
|
|
if (i === 0) { |
|
|
|
|
fallbackUrl = fallbackUrl + '?' + keys[i] + '=' + newQuery[keys[i]] |
|
|
|
|
} else { |
|
|
|
|
fallbackUrl = fallbackUrl + '&' + keys[i] + '=' + newQuery[keys[i]] |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// alert(fallbackUrl)
|
|
|
|
|
// router.replace({path: fallbackUrl})
|
|
|
|
|
store.dispatch("LoginBySso", { SSOToken: ssotoken, grantType: 'yawei', fallbackUrl: fallbackUrl }) |
|
|
|
|
.then(() => { |
|
|
|
|
// this.loading = false;
|
|
|
|
|
console.log('=============登录成功') |
|
|
|
|
router.replace({ path: fallbackUrl }) |
|
|
|
|
}, err => { |
|
|
|
|
// this.loading = false;
|
|
|
|
|
console.log('err=======res', err) |
|
|
|
|
if (err.error == 'invalid_request') { |
|
|
|
|
window.location.href = err.error_description;//重定向
|
|
|
|
|
} else if (err.error == 'invalid_grant') { |
|
|
|
|
MessageBox.confirm(err.error_description, '提示', { |
|
|
|
|
confirmButtonText: '确定', |
|
|
|
|
showClose: false, |
|
|
|
|
showCancelButton: false, |
|
|
|
|
type: 'warning', |
|
|
|
|
closeOnClickModal: false |
|
|
|
|
}).then(() => { |
|
|
|
|
window.location.href = 'http://jhoa.qd.gov.cn/Default.aspx'; |
|
|
|
|
}) |
|
|
|
|
} else { |
|
|
|
|
MessageBox.confirm(err.error_description || '登录失败', '提示', { |
|
|
|
|
confirmButtonText: '确定', |
|
|
|
|
showClose: false, |
|
|
|
|
showCancelButton: false, |
|
|
|
|
type: 'warning', |
|
|
|
|
closeOnClickModal: false |
|
|
|
|
}).then(() => { |
|
|
|
|
window.location.href = 'http://jhoa.qd.gov.cn/Default.aspx'; |
|
|
|
|
}) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
//判断是否需要认证,没有登录访问去登录页
|
|
|
|
|
if (meta.isAuth === false) { |
|
|
|
|
else if (meta.isAuth === false) { |
|
|
|
|
next() |
|
|
|
|
} else { |
|
|
|
|
next('/newlogin') |
|
|
|
|
|