Unverified 提交 383159a0 authored 作者: fit2cloud-chenyw's avatar fit2cloud-chenyw 提交者: GitHub

Merge pull request #681 from dataease/pr@v1.1@fix_public_link_in_iframe

fix: 外部链接带密码嵌在iframe
...@@ -165,7 +165,9 @@ export default { ...@@ -165,7 +165,9 @@ export default {
// 增加判断 仪表板公共连接中使用viewInfo 正常使用viewData // 增加判断 仪表板公共连接中使用viewInfo 正常使用viewData
let method = viewData let method = viewData
if (!getToken() && getLinkToken()) { const token = this.$store.getters.token || getToken()
const linkToken = this.$store.getters.linkToken || getLinkToken()
if (!token && linkToken) {
method = viewInfo method = viewInfo
} }
......
...@@ -4,6 +4,7 @@ const getters = { ...@@ -4,6 +4,7 @@ const getters = {
size: state => state.app.size, size: state => state.app.size,
device: state => state.app.device, device: state => state.app.device,
token: state => state.user.token, token: state => state.user.token,
linkToken: state => state.user.linkToken,
avatar: state => state.user.avatar, avatar: state => state.user.avatar,
name: state => state.user.name, name: state => state.user.name,
introduction: state => state.user.introduction, introduction: state => state.user.introduction,
......
...@@ -18,7 +18,8 @@ const getDefaultState = () => { ...@@ -18,7 +18,8 @@ const getDefaultState = () => {
// 当前用户拥有哪些资源权限 // 当前用户拥有哪些资源权限
permissions: [], permissions: [],
language: getLanguage(), language: getLanguage(),
uiInfo: null uiInfo: null,
linkToken: null
} }
} }
...@@ -31,6 +32,9 @@ const mutations = { ...@@ -31,6 +32,9 @@ const mutations = {
SET_TOKEN: (state, token) => { SET_TOKEN: (state, token) => {
state.token = token state.token = token
}, },
SET_LINK_TOKEN: (state, linkToken) => {
state.linkToken = linkToken
},
SET_NAME: (state, name) => { SET_NAME: (state, name) => {
state.name = name state.name = name
}, },
...@@ -165,6 +169,9 @@ const actions = { ...@@ -165,6 +169,9 @@ const actions = {
commit('SET_LANGUAGE', language) commit('SET_LANGUAGE', language)
router.go(0) router.go(0)
}) })
},
setLinkToken({ commit }, linkToken) {
commit('SET_LINK_TOKEN', linkToken)
} }
} }
......
...@@ -34,6 +34,10 @@ service.interceptors.request.use( ...@@ -34,6 +34,10 @@ service.interceptors.request.use(
if ((linkToken = getLinkToken()) !== null) { if ((linkToken = getLinkToken()) !== null) {
config.headers[LinkTokenKey] = linkToken config.headers[LinkTokenKey] = linkToken
} }
if (!linkToken) {
linkToken = store.getters.linkToken
config.headers[LinkTokenKey] = linkToken
}
if (i18n.locale) { if (i18n.locale) {
const lang = i18n.locale.replace('_', '-') const lang = i18n.locale.replace('_', '-')
...@@ -92,6 +96,7 @@ const checkAuth = response => { ...@@ -92,6 +96,7 @@ const checkAuth = response => {
if (response.headers[LinkTokenKey.toLocaleLowerCase()] || (response.config.headers && response.config.headers[LinkTokenKey.toLocaleLowerCase()])) { if (response.headers[LinkTokenKey.toLocaleLowerCase()] || (response.config.headers && response.config.headers[LinkTokenKey.toLocaleLowerCase()])) {
const linkToken = response.headers[LinkTokenKey.toLocaleLowerCase()] || response.config.headers[LinkTokenKey.toLocaleLowerCase()] const linkToken = response.headers[LinkTokenKey.toLocaleLowerCase()] || response.config.headers[LinkTokenKey.toLocaleLowerCase()]
setLinkToken(linkToken) setLinkToken(linkToken)
store.dispatch('user/setLinkToken', linkToken)
} }
// 许可状态改变 刷新页面 // 许可状态改变 刷新页面
// if (response.headers['lic-status']) { // if (response.headers['lic-status']) {
......
<template> <template>
<div style="height: 100%;"> <div style="height: 100%;">
<link-error v-if="showIndex===0" :resource-id="resourceId" /> <link-error v-if="showIndex===0" :resource-id="resourceId" />
<link-pwd v-if="showIndex===1" :resource-id="resourceId" /> <link-pwd v-if="showIndex===1" :resource-id="resourceId" @fresh-token="refreshToken" />
<link-view v-if="showIndex===2" :resource-id="resourceId" /> <link-view v-if="showIndex===2" :resource-id="resourceId" />
</div> </div>
</template> </template>
...@@ -49,6 +49,9 @@ export default { ...@@ -49,6 +49,9 @@ export default {
this.showError() this.showError()
}) })
}, },
refreshToken() {
this.loadInit()
},
// 显示无效链接 // 显示无效链接
showError() { showError() {
......
...@@ -96,7 +96,8 @@ export default { ...@@ -96,7 +96,8 @@ export default {
if (!res.data) { if (!res.data) {
this.msg = this.$t('pblink.pwd_error') this.msg = this.$t('pblink.pwd_error')
} else { } else {
window.location.reload() // window.location.reload()
this.$emit('fresh-token')
} }
}) })
}) })
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论