axios 的 get 方法 params 传参,在输入框中输入某些特殊字符 例如中括号、Json格式参数等,请求时会直接报 400 错误,Bad Request。
事例:
get请求表格数据时传递JSON格式参数报错400
传递给后台参数格式为 ?ids=1&ids=2&ids=3这种键名相同形式的数据
原因:axios 的 get 方法,在使用 params 传参时,已经对对象参数进行了序列化处理
方案:在创建 axios 实例时,增加可选的序列化属性 paramsSerializer,按需求使用encodeURIComponent、JSON.stringifyt等方法处理参数,在负责序列化 'params’的函数中使用自定义参数的序列化