迁移 Flutter 端与训练脚本,模型/训练产物移出 git(遵循纯代码约定)
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
import axios from 'axios'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import router from '../router'
|
||||
|
||||
// 管理端请求封装:统一 /api/v1/admin 前缀;token 由登录页输入存 localStorage,随请求携带
|
||||
const request = axios.create({
|
||||
baseURL: '/api/v1/admin',
|
||||
timeout: 10000,
|
||||
})
|
||||
|
||||
request.interceptors.request.use((config) => {
|
||||
// 登录页校验时 localStorage 尚无 token,用请求级 authToken 优先
|
||||
const token = config.authToken || localStorage.getItem('adminToken')
|
||||
if (token) {
|
||||
config.headers['X-Admin-Token'] = token
|
||||
}
|
||||
return config
|
||||
})
|
||||
|
||||
request.interceptors.response.use(
|
||||
(resp) => {
|
||||
const body = resp.data
|
||||
if (body && body.code === 0) {
|
||||
return body.data
|
||||
}
|
||||
const msg = (body && body.message) || '请求失败'
|
||||
ElMessage.error(msg)
|
||||
return Promise.reject(new Error(msg))
|
||||
},
|
||||
(err) => {
|
||||
const body = err.response && err.response.data
|
||||
const code = body && body.code
|
||||
// 登录页校验 token 失败:不弹全局错误、不跳转,由页面自行提示
|
||||
if (code === 61 && !(err.config && err.config.skipAuthError)) {
|
||||
localStorage.removeItem('adminToken')
|
||||
ElMessage.error('登录已失效,请重新输入管理 token')
|
||||
router.push('/login')
|
||||
return Promise.reject(err)
|
||||
}
|
||||
ElMessage.error((body && body.message) || err.message || '网络错误')
|
||||
return Promise.reject(err)
|
||||
},
|
||||
)
|
||||
|
||||
export default request
|
||||
Reference in New Issue
Block a user