axios-miniprogram/src/request/transformURL.ts

18 lines
584 B
TypeScript

import { isPlainObject } from '../helpers/isTypes';
import { buildURL } from '../helpers/buildURL';
import { combineURL } from '../helpers/combineURL';
import { dynamicURL } from '../helpers/dynamicURL';
import { AxiosRequestConfig } from '../core/Axios';
export function transformURL(config: AxiosRequestConfig) {
const data = isPlainObject(config.data) ? config.data : {};
let url = config.url ?? '/';
url = combineURL(config.baseURL ?? '', url);
url = dynamicURL(url, config.params, data);
url = buildURL(url, config.params, config.paramsSerializer);
return url;
}