提交一波
This commit is contained in:
@@ -1,41 +1,45 @@
|
||||
const {axios, $glob} = window
|
||||
const init = () => new Promise(resolve => {
|
||||
const {axios, $glob} = window
|
||||
|
||||
let getAuthing = false
|
||||
const getToken = () => {
|
||||
getAuthing = true
|
||||
return axios.post("http://10.0.97.209/data-boot/na/sys/login", {
|
||||
t: Date.now(),
|
||||
userAcc: "kengee",
|
||||
password: "kengee@123",
|
||||
uuid: "",
|
||||
captcha: ""
|
||||
}).then(res => {
|
||||
if (res?.data?.data) {
|
||||
$glob.token = res.data.data.token
|
||||
let getAuthing = false
|
||||
const getToken = () => {
|
||||
getAuthing = true
|
||||
return axios.post("http://10.0.97.209/data-boot/na/sys/login", {
|
||||
t: Date.now(),
|
||||
userAcc: "kengee",
|
||||
password: "kengee@123",
|
||||
uuid: "",
|
||||
captcha: ""
|
||||
}).then(res => {
|
||||
if (res?.data?.data) {
|
||||
$glob.token = res.data.data.token
|
||||
}
|
||||
}).finally(() => getAuthing = false)
|
||||
}
|
||||
const http = axios.create({baseURL: '/'})
|
||||
const addToken = (config) => {
|
||||
config.headers['h-token'] = $glob.token
|
||||
return config
|
||||
}
|
||||
window.$wait = (t = 500) => new Promise(resolve => setTimeout(resolve, t))
|
||||
http.interceptors.request.use(async config => {
|
||||
while (getAuthing) {
|
||||
await $wait()
|
||||
}
|
||||
}).finally(() => getAuthing = false)
|
||||
}
|
||||
const http = axios.create({baseURL: '/'})
|
||||
const addToken = (config) => {
|
||||
config.headers['h-token'] = $glob.token
|
||||
return config
|
||||
}
|
||||
window.$wait = (t = 500) => new Promise(resolve => setTimeout(resolve, t))
|
||||
http.interceptors.request.use(async config => {
|
||||
while (getAuthing) {
|
||||
await $wait()
|
||||
}
|
||||
if (!$glob.token && !getAuthing) {
|
||||
await getToken()
|
||||
}
|
||||
return addToken(config)
|
||||
if (!$glob.token && !getAuthing) {
|
||||
await getToken()
|
||||
}
|
||||
return addToken(config)
|
||||
})
|
||||
http.interceptors.response.use(res => {
|
||||
if (res?.data) {
|
||||
return res.data
|
||||
} else if (res?.code == 401) {
|
||||
return getToken().then(() => http.request(res.config))
|
||||
}
|
||||
return res
|
||||
})
|
||||
window.$http = http
|
||||
resolve()
|
||||
})
|
||||
http.interceptors.response.use(res => {
|
||||
if (res?.data) {
|
||||
return res.data
|
||||
} else if (res?.code == 401) {
|
||||
return getToken().then(() => http.request(res.config))
|
||||
}
|
||||
return res
|
||||
})
|
||||
window.$http = http
|
||||
await init()
|
||||
|
||||
12
src/utils/inject.js
Normal file
12
src/utils/inject.js
Normal file
@@ -0,0 +1,12 @@
|
||||
const KENGEE_CDN_BASE = "http://10.0.97.209/presource/datascreen/"
|
||||
const libs = [`${KENGEE_CDN_BASE}/js/pinyin.min.js`]
|
||||
|
||||
Promise.all([
|
||||
import("./fetch"),
|
||||
...libs.map(url => new Promise(resolve => {
|
||||
const script = document.createElement("script")
|
||||
script.src = url
|
||||
document.head.appendChild(script)
|
||||
script.onload = () => resolve()
|
||||
})),
|
||||
])
|
||||
Reference in New Issue
Block a user