码迷,mamicode.com
首页 > 移动开发 > 详细

Axios采坑之路

时间:2019-05-24 12:32:37      阅读:329      评论:0      收藏:0      [点我收藏+]

标签:body   block   app   image   生效   method   query   应该   ica   

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采坑之路

标签:body   block   app   image   生效   method   query   应该   ica   

原文地址:https://www.cnblogs.com/iPing9/p/10917359.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!