35 lines
739 B
TypeScript
35 lines
739 B
TypeScript
import axios from 'axios'
|
||
|
||
// 创建axios实例
|
||
const service = axios.create({
|
||
baseURL: '/',
|
||
timeout: 10000,
|
||
})
|
||
|
||
// 请求拦截器
|
||
service.interceptors.request.use(
|
||
(config) => {
|
||
const devTenantId = sessionStorage.getItem('dev_tenant_id')
|
||
if (devTenantId) {
|
||
config.headers['X-Tenant-ID'] = encodeURIComponent(devTenantId)
|
||
}
|
||
return config
|
||
},
|
||
(error) => {
|
||
return Promise.reject(error)
|
||
}
|
||
)
|
||
|
||
// 响应拦截器 - 保留完整 axios 响应,由 api 层统一取 response.data(即 {code, data, msg})
|
||
service.interceptors.response.use(
|
||
(response) => {
|
||
return response
|
||
},
|
||
(error) => {
|
||
console.error('API请求错误:', error)
|
||
return Promise.reject(error)
|
||
}
|
||
)
|
||
|
||
export default service
|