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;
});
相关推荐
qq_589666058 小时前
TypeScript 完整入门教程
前端·javascript·typescript
星栈独行9 小时前
翻完 Pi 源码:它和 Codex、Claude Code 有何不同
开发语言·javascript·人工智能·程序人生
qq_4480111610 小时前
C语言中的变量和函数的定义与声明
android·c语言·开发语言
落落Plus10 小时前
浏览器缓存机制详解
javascript·缓存·浏览器缓存
孫治AllenSun11 小时前
【DataX】生产环境搭建DataX集群案例
java·开发语言·jvm
用户0595401744611 小时前
LLM对话记忆测试踩坑实录:手工回归30分钟,自动化后2分钟发现3个隐藏Bug
前端·css
c2385612 小时前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法
Ashley的成长之路12 小时前
前端性能优化实战手册·第2篇:资源加载策略全解
前端·性能优化·资源加载·http/3·性能优化实战·资源加载优化
浅水壁虎13 小时前
vue基础(第二章 )
前端·javascript·vue.js