import axios from 'axios'

// 创建 Axios 实例
const service = axios.create({
    baseURL: import.meta.env.VITE_API_BASE_URL || '', // 从环境变量中读取 API 基础地址
    timeout: 5000, // 请求超时时间
})

// 请求拦截器
service.interceptors.request.use(
    (config) => {
        /*// 可在此添加 token 或其他请求头
        const token = localStorage.getItem('token');
        if (token) {
            config.headers.Authorization = `Bearer ${token}`;
        }*/
        return config
    },
    (error) => {
        return Promise.reject(error)
    }
)

// 响应拦截器
service.interceptors.response.use(
    (response) => {
        const { data } = response
        // 可根据后端规范处理通用错误
        if (data.code !== 200) {
            console.error(data.message || '请求错误')
            return Promise.reject(new Error(data.message || '请求错误'))
        }
        return data
    },
    (error) => {
        console.error(error.message || '响应错误')
        return Promise.reject(error)
    }
)

export default service
