方法一:自己写一个转译的函数,把&,空格等字符用对应的字符替换,具体替换如下

特殊字符转译字符
+%2B
空格%20
/%2F
%3F
%%25

方法二:用axios提供的配置paramsSerializer
在创建axios实例的时候统一配置,后面所有的单独请求不用重复配置

 // 创建axios实例
 import Qs from 'qs'; 
var instance = axios.create({
    timeout: 1000 * 60,//请求超时
    paramsSerializer: function(params) {//序列化请求参数,避免get请求参数出现&,空格等识别错误的问题
        return Qs.stringify(params, {arrayFormat: 'brackets'})
    }
});
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐