axios 用formData的方式请求数据

需求:使用axios库用来做http数据传输。

问题:传递数据的时候不是直接通过json的方式来传输的数据,二是通过formData的方式

解决:

axios 请求头设置,Content-Type

复制代码
"Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"

往后台传递参数的时候用 qs.stringify()处理:

复制代码
config.data = Qs.stringify(config.data);

当遇到参数中有 数组对象嵌套时,需要用 JSON.stringify进行包裹:

javascript 复制代码
{
    sbumen:sbumen,
    strjsoninfo:JSON.stringify({ infolist: caiGouNeiRongFormArr }),
}

caiGouNeiRongFormArr 是一个数组对象,类似:

javascript 复制代码
[
{a:1,b:2},
{a:3,b:4}
]

在axios中统一配置:

javascript 复制代码
ajax.interceptors.request.use((config) => {
  console.log(config);
  config.data = Qs.stringify(config.data);
  (config.headers = {
    "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
  }),
  return config;
});
相关推荐
牧艺5 小时前
浏览器 3D 交互实战:射线拾取、描边高亮与业务面板联动
前端·three.js·数据可视化
叉歪5 小时前
为 UnoCSS 扩展无限色阶与主题换色
前端·css
灵晔君5 小时前
【C++】二叉搜索树
开发语言·c++
jiayong235 小时前
第 44 课:任务详情抽屉里的评论输入与操作记录联动
前端
ndsc_d5 小时前
前端实战复盘:用AI直接生成响应式官网落地页与React源码
前端·人工智能·react.js·ui·前端框架·aigc·paico
LongtengGensSupreme5 小时前
C#图像内存高速拷贝:使用Marshal.AllocHGlobal与ArrayPool实现内存拷贝的几个方法
开发语言·数码相机·c#
Java面试题总结5 小时前
Python,单引号和双引号有何区别
开发语言·python
鱼子星_6 小时前
【C++】内存管理:内存分布,new/delete的使用及细节处理,new/delete的底层,定位new表达式
开发语言·c++·笔记
学逆向的6 小时前
汇编——函数
开发语言·汇编·网络安全
咸鱼翻身小阿橙6 小时前
多线程解析
java·开发语言