axios使用get的params传递一个数组直接转化 hk[] = [1,2]我是这样写的
var nk = [1,2,3]
axios.get(urlStr,{
params:{
hk:nk
}
})
单请求的url被拼接为 localhost:8080/api/?hk[] = [1,2,3]
变成了400的非法格式了 如何把它拼接为正确的 localhost:8080/api/?hk=1&hk=2&nk=3
非常感谢大家 这个问题已经困扰我好多天了
var nk = [1,2,3]
axios.get(urlStr,{
params:{
hk:nk
}
})
单请求的url被拼接为 localhost:8080/api/?hk[] = [1,2,3]
变成了400的非法格式了 如何把它拼接为正确的 localhost:8080/api/?hk=1&hk=2&nk=3
非常感谢大家 这个问题已经困扰我好多天了
urlStr+=?
nk.forEach(e=>{
urlStr+="hk="+e+"&"
})
urlStr=urlStr.replace(/&$/,"")
axios.get(urlStr)
qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' })
另外,为什么非要get?一堆url也不好看,post直接传json他不香?
最后再提供一种方法:let arr = [1, 2, 3];
let result = '?'+arr.map((item, index) => `item${index}=${item}`).join('&');
console.log(result); //output is '?item1=1&item2=2&item3=3'