|
|
@ -10,6 +10,46 @@ const resolveAcceptLanguage = () => { |
|
|
return locale === 'en' ? 'en-US' : 'zh-CN' |
|
|
return locale === 'en' ? 'en-US' : 'zh-CN' |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const resolveAdvancedSearchHeaders = () => { |
|
|
|
|
|
const route = router && router.currentRoute ? router.currentRoute : {} |
|
|
|
|
|
let routePath = String(route.path || '').trim() |
|
|
|
|
|
if (!routePath) { |
|
|
|
|
|
return {} |
|
|
|
|
|
} |
|
|
|
|
|
if (routePath.charAt(0) !== '/') { |
|
|
|
|
|
routePath = '/' + routePath |
|
|
|
|
|
} |
|
|
|
|
|
const key = 'advanced_search_context_' + routePath |
|
|
|
|
|
let matchedKey = key |
|
|
|
|
|
let raw = sessionStorage.getItem(key) |
|
|
|
|
|
if (!raw && routePath.indexOf('/modules/') === 0) { |
|
|
|
|
|
matchedKey = 'advanced_search_context_' + routePath.substring('/modules'.length) |
|
|
|
|
|
raw = sessionStorage.getItem(matchedKey) |
|
|
|
|
|
} |
|
|
|
|
|
if (!raw && routePath.indexOf('/modules/') !== 0) { |
|
|
|
|
|
matchedKey = 'advanced_search_context_' + '/modules' + routePath |
|
|
|
|
|
raw = sessionStorage.getItem(matchedKey) |
|
|
|
|
|
} |
|
|
|
|
|
if (!raw) { |
|
|
|
|
|
return {} |
|
|
|
|
|
} |
|
|
|
|
|
try { |
|
|
|
|
|
const context = JSON.parse(raw) |
|
|
|
|
|
if (!context || !context.menuUrl || !Array.isArray(context.conditions) || context.conditions.length <= 0) { |
|
|
|
|
|
sessionStorage.removeItem(matchedKey) |
|
|
|
|
|
return {} |
|
|
|
|
|
} |
|
|
|
|
|
sessionStorage.removeItem(matchedKey) |
|
|
|
|
|
return { |
|
|
|
|
|
'X-Advanced-Search-Menu': String(context.menuUrl), |
|
|
|
|
|
'X-Advanced-Search-Conditions': encodeURIComponent(JSON.stringify(context.conditions)) |
|
|
|
|
|
} |
|
|
|
|
|
} catch (e) { |
|
|
|
|
|
sessionStorage.removeItem(matchedKey) |
|
|
|
|
|
return {} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// axios.defaults.withCredentials = false
|
|
|
// axios.defaults.withCredentials = false
|
|
|
const http = axios.create({ |
|
|
const http = axios.create({ |
|
|
timeout: 1000 * 300, |
|
|
timeout: 1000 * 300, |
|
|
@ -26,6 +66,10 @@ const http = axios.create({ |
|
|
http.interceptors.request.use(config => { |
|
|
http.interceptors.request.use(config => { |
|
|
config.headers['token'] = Vue.cookie.get('token') // 请求头带上token
|
|
|
config.headers['token'] = Vue.cookie.get('token') // 请求头带上token
|
|
|
config.headers['Accept-Language'] = resolveAcceptLanguage() |
|
|
config.headers['Accept-Language'] = resolveAcceptLanguage() |
|
|
|
|
|
const advancedHeaders = resolveAdvancedSearchHeaders() |
|
|
|
|
|
Object.keys(advancedHeaders).forEach(key => { |
|
|
|
|
|
config.headers[key] = advancedHeaders[key] |
|
|
|
|
|
}) |
|
|
return config |
|
|
return config |
|
|
}, error => { |
|
|
}, error => { |
|
|
return Promise.reject(error) |
|
|
return Promise.reject(error) |
|
|
@ -100,6 +144,10 @@ const instance = axios.create({ |
|
|
instance.interceptors.request.use(config => { |
|
|
instance.interceptors.request.use(config => { |
|
|
config.headers['token'] = Vue.cookie.get('token') // 请求头带上token
|
|
|
config.headers['token'] = Vue.cookie.get('token') // 请求头带上token
|
|
|
config.headers['Accept-Language'] = resolveAcceptLanguage() |
|
|
config.headers['Accept-Language'] = resolveAcceptLanguage() |
|
|
|
|
|
const advancedHeaders = resolveAdvancedSearchHeaders() |
|
|
|
|
|
Object.keys(advancedHeaders).forEach(key => { |
|
|
|
|
|
config.headers[key] = advancedHeaders[key] |
|
|
|
|
|
}) |
|
|
return config |
|
|
return config |
|
|
}, error => { |
|
|
}, error => { |
|
|
return Promise.reject(error) |
|
|
return Promise.reject(error) |
|
|
@ -136,6 +184,10 @@ const instance2 = axios.create({ |
|
|
instance2.interceptors.request.use(config => { |
|
|
instance2.interceptors.request.use(config => { |
|
|
config.headers['token'] = Vue.cookie.get('token') // 请求头带上token
|
|
|
config.headers['token'] = Vue.cookie.get('token') // 请求头带上token
|
|
|
config.headers['Accept-Language'] = resolveAcceptLanguage() |
|
|
config.headers['Accept-Language'] = resolveAcceptLanguage() |
|
|
|
|
|
const advancedHeaders = resolveAdvancedSearchHeaders() |
|
|
|
|
|
Object.keys(advancedHeaders).forEach(key => { |
|
|
|
|
|
config.headers[key] = advancedHeaders[key] |
|
|
|
|
|
}) |
|
|
return config |
|
|
return config |
|
|
}, error => { |
|
|
}, error => { |
|
|
return Promise.reject(error) |
|
|
return Promise.reject(error) |
|
|
|