今天写代码的时候,后台接口接收wflxList的格式为:
@RequestParam(value = "wflxList[]", required = false) List<String> wflxList
前端直接传['A','B'],会报错。网上查了没查到解决方案。
经过同学知道,请求后台时,对参数使用qs.stringfy()方法,把参数对象格式化为一个字符串。
export function test (params) {return fxcRequest({ url: `/test/table?${stringify(params,{arrayFormat: 'brackets'})}`, method: 'GET', }) }
按自己的目标格式进行转换:
1、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' }) // 输出结果:'a[0]=b&a[1]=c' 2、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' }) // 输出结果:'a[]=b&a[]=c' 3、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' }) // 输出结果:'a=b&a=c' 4、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'comma' }) // 输出结果:'a=b,c'
好的,就这样。