axios默认请求头是application/x-www-form-urlencoded,而这个 application/x-www-form-urlencoded 格式发送数据,数据必须是 URLSearchParams 类型,或者字符串参数 a=1&b=2 格式。
出现的问题:能成功访问数据库,但后端接收不到传入的参数
解决要点:根据后端给的接口要求的参数格式选择请求头的content-type和相应的参数处理方法
qs.stringify()和JSON.stringify()的区别
JSON.stringify()——对应请求头的“content-type”为“application/json;charset=UTF-8”
qs.stringify()——对应请求头的“content-type”为“application/x-www-form-urlencoded”
两个方法对参数的处理结果分别如下,图1和图2为JSON.stringify()方法传送的请求参数格式;图3、图4和图5为qs.stringify()方法传送的请求参数格式;
图1 json方法处理后参数的形式