将前端的的对象对象值映射到后端实例参数的 params 参数。前端的写法采用更符合直觉的方式:{
name: '22',
params: {
age: '21',
weight: 60
}
},同时也支持普通的方式,{
name: '22',
'params[age]': '21',
'params[weight]': 60
}
This commit is contained in:
parent
3ad7742838
commit
9ca4c37b08
|
|
@ -20,6 +20,27 @@ service.interceptors.request.use(config => {
|
|||
if (getToken() && !isToken) {
|
||||
config.headers['Authorization'] = 'Bearer ' + getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
|
||||
}
|
||||
|
||||
let url = config.url;
|
||||
if (config.method === 'get' && config.params) {
|
||||
url += '?';
|
||||
let keys = Object.keys(config.params);
|
||||
for (const key of keys) {
|
||||
const value = config.params[key];
|
||||
if (typeof value === 'object') {
|
||||
for (const key2 of Object.keys(value)) {
|
||||
let key3 = key + '[' + key2 + ']';
|
||||
url += `${encodeURIComponent(key3)}=${value[key2] == undefined ? '' : encodeURIComponent(value[key2])}&`;
|
||||
}
|
||||
} else {
|
||||
url += `${encodeURIComponent(key)}=${config.params[key] == undefined ? '' : encodeURIComponent(config.params[key])}&`;
|
||||
}
|
||||
}
|
||||
url = url.substring(0, url.length - 1);
|
||||
config.params = {};
|
||||
}
|
||||
config.url = url;
|
||||
|
||||
return config
|
||||
}, error => {
|
||||
console.log(error)
|
||||
|
|
|
|||
Loading…
Reference in New Issue