参考:vue中axios解决get请求传输数据是数组格式问题(转载)
    我们可以在axios请求拦截器中对参数进行序列化配置

    1. axios.interceptors.request.use((config) => {
    2. NProgress.start() // 进度条开始
    3. // 携带上token
    4. let token = localStorage.getItem('token')
    5. token && (config.headers.Authorization = token)
    6. //只针对get方式进行qs序列化
    7. if (config.method === 'get') {
    8. config.paramsSerializer = function (params) {
    9. return Qs.stringify(params, {
    10. arrayFormat: 'repeat'
    11. })
    12. }
    13. }
    14. console.log('axios请求发送值', config);
    15. return config
    16. }, error => {
    17. return Promise.reject(error)
    18. })

    JAVA后端接受的时候,要使用@RequestParam指定value值,对应前端发送的数组名称,数组不可以是对象哦。

    1. @GetMapping("/dayTotal")
    2. R getDayTotal(@RequestParam(value = "dates", required = false) List<String> dates,
    3. String shopbelong,
    4. String payer)