// 引入配置
import config from '@/config'
// 引入请求拦截
import {requestInterceptors} from './requestInterceptors.js'
// 引入响应拦截
import {responseInterceptors} from './responseInterceptors.js'
// 初始化请求配置
export const useRequest = (app) => {
    uni.$uv.http.setConfig((defaultConfig) => {
        /* defaultConfig 为默认全局配置 */
        defaultConfig.baseURL = config.serverBaseUrl /* 根域名 */
        defaultConfig.custom = {catch: config.responseErrorCatch, root: true}
        defaultConfig.paramsSerializer = (v) => uni.$uv.queryParams(v, false, 'comma')
        return defaultConfig
    })
    requestInterceptors(app);
    responseInterceptors(app);
}

// 兼容旧的mx-app request的写法，防止修改过多的request原文件
// TODO：待确认是否兼容了所有请求场景，需要结合interceptors
export default function request(options) {
    return uni.$uv.http.request(options)
}
