Axios采坑之路

Posted iping9

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Axios采坑之路相关的知识,希望对你有一定的参考价值。

Axios采坑之路

POST请求设置Content-Type

由于后端采用的是form表单形式上送参数,需要设置Content-Type

  • axios设置如下
const _axios = axios.create(config);
_axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;';
  • api调用
import { request } from '@plugin/axios'
export const getEventDataList = data => {
  return request ({
    url: '/xxx/initialize',
    method: 'post',
    params: data
  })
}
  • 使用chrome调试工具看

    post请求,参数以query string的形式上送,requestheadersContent-Type参数,试过很多方法都不行

技术图片

后来后端说参数应该在body上送,并且把参数转成query string的形式就可以了

  • 调用方式改为如下方式
import { request } from '@plugin/axios'
import qs from 'qs'

export const getEventDataList = data => {
  return request ({
    url: '/xxx/initialize',
    method: 'post',
    data: qs.stringify(data)
  })
}
  • 使用chrome调试工具看,有Content-Type参数了,并且参数是以Form Data的形式上送,不再是query string

技术图片

  • 总结

post请求只有参数使用body上送设置Content-Type才能生效,post请求参数是以query string的形式上送,则无法设置Content-Type

以上是关于Axios采坑之路的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

VSCode自定义代码片段14——Vue的axios网络请求封装

Windows MySql增量备份完整备份采坑之路

CentOS7.X安装英伟达显卡采坑之路

Flutter采坑之路 用真机跑起来的时候提示 initGradle失败,IO异常,downloading Gradle-4.6-all.zip失败