axios中get请求参数传递数组

1、问题

当我们需要通过get方式传递一个数组作为参数 tag:[1,2,3,4]

预期是解析为:https://www.cnblogs.com/enter?tag=1&tag=2&tag=3&tag=4

然而真相是这样的:https://www.cnblogs.com/enter?tag[]=1&tag[]=2&tag[]=3&tag[]=4,后台是不可能解析到传递的参数


2、解决方案

此时需要将参数序列化,在axios中的配置如下

import qs from 'qs';

axiosInstance.interceptors.request.use(

  config => {

    if (config.method === 'get') {

      config.paramsSerializer = function(params) {

        return qs.stringify(params, { arrayFormat: 'repeat' })

      }

    }

}

3、参考链接

https://www.cnblogs.com/kingreatwill/p/12641238.html#/cnblog/works/article/12641238

https://blog.csdn.net/sansan_7957/article/details/82227040

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容