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;
});
相关推荐
沐知全栈开发2 分钟前
MongoDB 删除数据库
开发语言
刘一说3 分钟前
ES6+核心特性全面浅析
java·前端·es6
i_am_a_div_日积月累_6 分钟前
el-tree半选回显问题;el-tree获取半选节点id
javascript·vue.js·elementui
CodeCraft Studio8 分钟前
国产化Excel开发组件Spire.XLS教程:使用Python批量删除Excel分页符
开发语言·python·excel·python开发·spire.xls·excel api库·excel开发组件
kirinlau10 分钟前
Vue.observable实现vue原生轻量级状态管理详解
前端·javascript·vue.js
严文文-Chris10 分钟前
RAG关键技术要点详解
java·服务器·前端
木子欢儿11 分钟前
在 Debian 13 上搭建一个 NTP (Network Time Protocol) 服务器
运维·服务器·开发语言·debian·php
自然 醒11 分钟前
elementUI的select下拉框如何下拉加载数据?
前端·javascript·elementui
我没想到原来他们都是一堆坏人12 分钟前
常用npm源与nrm
前端·npm·node.js