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;
});
相关推荐
qingyun9895 分钟前
深度优先遍历:JavaScript递归查找树形数据结构中的节点标签
前端·javascript·数据结构
胡楚昊6 分钟前
NSSCTF动调题包通关
开发语言·javascript·算法
2401_8370885013 分钟前
简要总结 HashSet 和 HashMap(Java)
java·开发语言
熬夜敲代码的小N23 分钟前
Vue (Official)重磅更新!Vue Language Tools 3.2功能一览!
前端·javascript·vue.js
90后的晨仔28 分钟前
用 Python 脚本一键重命名序列帧图片的名称
前端
辰同学ovo28 分钟前
Vue 2 路由指南:从入门到实战优化
前端·vue.js
小彭努力中29 分钟前
1.在 Vue 3 中使用 Cesium 快速展示三维地球
前端·javascript·vue.js·#地图开发·#cesium·#vue3
毕设源码-钟学长32 分钟前
【开题答辩全过程】以 基于Java的家政服务管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
一棵开花的树,枝芽无限靠近你32 分钟前
【face-api.js】1️⃣基于Tensorflow.js的人脸识别项目开源项目
javascript·开源·tensorflow·face-api.js
小白学大数据35 分钟前
Java 爬虫对百科词条分类信息的抓取与处理
java·开发语言·爬虫