axios get 请求 url 转码 空格转成+,导致请求失败
# 在请求拦截器中,对 params 进行处理
axios.interceptors.request.use((config) => {
let url = config.url;
if (config.method === "get" && config.params) {
url += "?"; // 拼接参数
// 获取所有参数,通过循环 拼接所有参数,encodeURIComponent对参数编码,
Object.keys(config.params).map((key) => {
url += `${key}=${encodeURIComponent(config.params[key])}&`;
});
url = url.substring(0, url.length - 1); // 删除最后一个&字符
config.params = {}; // 参数已经存在于 url中
}
config.url = url;
return config;
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
上次更新: 2024/07/01, 22:24:11