我们在使用axios发请求的时候,有的时候需要传递参数,而针对于他所需要的参数格式有四种
// axios所支持的参数格式有:
// 对象:{key:value,key:value},axios内部会进行转换为key=value&key=value
// 字符串: key=value&key=value&key=value....
// json字符串:'{"key":"value","key":"value"}'
// formdata:new Formdata
但我们若是自己写原生的方法XMLHttpRequest()发请求的话,尤其是get,要用拼接的方式url += '?' + parseObjectToString(params) ,要把?后面的参数转成字符串才行。
function parseObjectToString(obj) {
let arr = []
for (let key in obj) {
arr.push(key + '=' + obj[key])
}
return arr.join('&')
}
一般对象都是{name:'jack',age:20},而经过上面的操作可以变成 name=jack&age=20