hookehuyr

feat(axios): 自动从页面URL携带client_id到接口请求

恢复parseQueryString工具函数的导入,将页面URL中的client_id作为兜底参数透传给所有接口请求,若请求未主动指定该参数则自动添加
......@@ -9,8 +9,7 @@
import axios from 'axios';
import router from '@/router';
import qs from 'Qs'
import { strExist } from '@/utils/tools'
// import { parseQueryString } from '@/utils/tools'
import { strExist, parseQueryString } from '@/utils/tools'
axios.defaults.params = {
f: 'tools',
......@@ -21,7 +20,7 @@ axios.defaults.params = {
*/
axios.interceptors.request.use(
config => {
// const url_params = parseQueryString(location.href);
const pageParams = parseQueryString(location.href);
// GET请求默认打上时间戳,避免从缓存中拿数据。
const timestamp = config.method === 'get' ? (new Date()).valueOf() : '';
......@@ -35,6 +34,11 @@ axios.interceptors.request.use(
mergedParams[key] = value;
}
// 页面地址上的 client_id 作为兜底参数透传给所有接口请求
if (pageParams.client_id && !mergedParams.client_id && !config.params?.client_id) {
mergedParams.client_id = pageParams.client_id;
}
// 清理URL,移除查询参数(因为参数会通过params传递)
config.url = baseUrl;
......