|
@@ -1,8 +1,8 @@
|
|
|
import axios from 'axios'
|
|
|
import { Message } from 'element-ui'
|
|
|
|
|
|
-import { userInfo } from '@/stores/user'
|
|
|
-const { token } = userInfo
|
|
|
+import { user } from '@/stores/user'
|
|
|
+const { token } = user
|
|
|
|
|
|
const service = axios.create({
|
|
|
baseURL: window.globalVariables.api,
|
|
@@ -49,41 +49,83 @@ service.interceptors.request.use(
|
|
|
},
|
|
|
config.data ?? {}
|
|
|
)
|
|
|
+ if (config.method === 'get') {
|
|
|
+ config.params = Object.assign(
|
|
|
+ {
|
|
|
+ token,
|
|
|
+ },
|
|
|
+ config.params || {}
|
|
|
+ )
|
|
|
+ }
|
|
|
+ // 短时间多个请求会冲突
|
|
|
+ // console.groupCollapsed('axios: ' + config.url)
|
|
|
+ // console.log('request', config.data)
|
|
|
+ return config
|
|
|
}
|
|
|
+ (error) => {
|
|
|
+ // do something with request error
|
|
|
+ console.log(error) // for debug
|
|
|
+ return Promise.reject(error)
|
|
|
+ }
|
|
|
+ if (config.$type === 'import') {
|
|
|
+ config.timeout = 1000 * 60 * 20
|
|
|
+ config.transformRequest = [function (data, headers) {
|
|
|
+ const formData = new FormData()
|
|
|
+ Object.keys(data).forEach(key => formData.append(key, data[key]))
|
|
|
+ return formData;
|
|
|
+ }]
|
|
|
+ }
|
|
|
+ if (config.$type === 'upload') {
|
|
|
+ config.timeout = 1000 * 60 * 2
|
|
|
+ config.transformRequest = [function (data, headers) {
|
|
|
+ const formData = new FormData()
|
|
|
+ Object.keys(data).forEach(key => formData.append(key, data[key]))
|
|
|
+ return formData;
|
|
|
+ }]
|
|
|
+ }
|
|
|
+ // 短时间多个请求会冲突
|
|
|
+ // console.groupCollapsed('axios: ' + config.url)
|
|
|
+ // console.log('request', config.data)
|
|
|
+ return config
|
|
|
+ },
|
|
|
+ (error) => {
|
|
|
+ // do something with request error
|
|
|
+ console.log(error) // for debug
|
|
|
+ return Promise.reject(error)
|
|
|
}
|
|
|
- if (config.$type === 'import') {
|
|
|
- config.timeout = 1000 * 60 * 20
|
|
|
- config.transformRequest = [function (data, headers) {
|
|
|
- const formData = new FormData()
|
|
|
- Object.keys(data).forEach(key => formData.append(key, data[key]))
|
|
|
- return formData;
|
|
|
- }]
|
|
|
- }
|
|
|
- if (config.$type === 'upload') {
|
|
|
- config.timeout = 1000 * 60 * 2
|
|
|
- config.transformRequest = [function (data, headers) {
|
|
|
- const formData = new FormData()
|
|
|
- Object.keys(data).forEach(key => formData.append(key, data[key]))
|
|
|
- return formData;
|
|
|
- }]
|
|
|
- }
|
|
|
- // 短时间多个请求会冲突
|
|
|
- // console.groupCollapsed('axios: ' + config.url)
|
|
|
- // console.log('request', config.data)
|
|
|
- return config
|
|
|
- },
|
|
|
- (error) => {
|
|
|
- // do something with request error
|
|
|
- console.log(error) // for debug
|
|
|
- return Promise.reject(error)
|
|
|
- }
|
|
|
)
|
|
|
|
|
|
// response interceptor
|
|
|
+let isRelogin = false
|
|
|
service.interceptors.response.use(
|
|
|
+ // <<<<<<< HEAD
|
|
|
+ // (response, c) => {
|
|
|
+ // const { code, msg } = response.data
|
|
|
+ // if (code !== '1' && code !== 1) {
|
|
|
+ // Message.error(msg)
|
|
|
+ // =======
|
|
|
(response, c) => {
|
|
|
- const { code, msg } = response.data
|
|
|
- if (code !== '1' && code !== 1) {
|
|
|
+ const { code, msg, data } = response.data
|
|
|
+ if (code === '10001') {
|
|
|
+ if (!isRelogin) {
|
|
|
+ isRelogin = true
|
|
|
+ Message.error(msg)
|
|
|
+ request({
|
|
|
+ url: '/user/main/login',
|
|
|
+ data: {
|
|
|
+ token: data.token
|
|
|
+ }
|
|
|
+ }).then(res => {
|
|
|
+ if (res.code == 1) {
|
|
|
+ localStorage.setItem('userInfo', JSON.stringify(res.data));
|
|
|
+ isRelogin = false
|
|
|
+ // 视情况打开
|
|
|
+ location.reload()
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ } else if (code !== '1') {
|
|
|
Message.error(msg)
|
|
|
}
|
|
|
// console.log('response', response.data)
|
|
@@ -93,7 +135,16 @@ service.interceptors.response.use(
|
|
|
(error) => {
|
|
|
console.error('err' + error) // for debug
|
|
|
return Promise.reject(error)
|
|
|
+>>>>>>> master
|
|
|
}
|
|
|
+ // console.log('response', response.data)
|
|
|
+ // console.groupEnd()
|
|
|
+ return response.data
|
|
|
+ },
|
|
|
+(error) => {
|
|
|
+ console.error('err' + error) // for debug
|
|
|
+ return Promise.reject(error)
|
|
|
+}
|
|
|
)
|
|
|
|
|
|
// 上传
|
|
@@ -119,6 +170,7 @@ request.interceptors.response.use(
|
|
|
}
|
|
|
)
|
|
|
|
|
|
+<<<<<<< HEAD
|
|
|
export function download(url, data) {
|
|
|
const params = Object.assign({ token, limit: 10000, page: 1, api: 'xls' }, data)
|
|
|
const paramsStr = Object.entries(params).map(([k, v]) => `${k}=${v}`).join('&')
|
|
@@ -126,6 +178,29 @@ export function download(url, data) {
|
|
|
const href = `${window.globalVariables.api}${url}?${paramsStr}`
|
|
|
el.setAttribute('href', href)
|
|
|
el.click()
|
|
|
+=======
|
|
|
+export function download(url, data, name) {
|
|
|
+ const params = Object.assign({ token, limit: 10000, page: 1, api: 'xls' }, data)
|
|
|
+ const paramsStr = Object.entries(params).map(([k, v]) => `${k}=${v}`).join('&')
|
|
|
+ const el = document.createElement('a')
|
|
|
+ const href = `${window.globalVariables.api}${url}?${paramsStr}`
|
|
|
+ el.setAttribute('href', href)
|
|
|
+ name && el.setAttribute('download', name)
|
|
|
+ el.click()
|
|
|
+>>>>>>> master
|
|
|
}
|
|
|
|
|
|
-export default service
|
|
|
+export function download2(url, data, name) {
|
|
|
+ const el = document.createElement('a')
|
|
|
+ const href = `${window.globalVariables.api}/openapi/download.php?path=${url}&name=${name}`
|
|
|
+ el.setAttribute('href', href)
|
|
|
+ name && el.setAttribute('download', name)
|
|
|
+ el.click()
|
|
|
+}
|
|
|
+
|
|
|
+export default (...args) => {
|
|
|
+ if (!isRelogin)
|
|
|
+ return service(...args)
|
|
|
+ else
|
|
|
+ return Promise.reject({})
|
|
|
+}
|