vuecli+axios的post请求传递参数异常

大多数的web服务器只能识别form的post的请求,即请求头Content-Type为’application/x-www-form-urlencoded‘

axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'这个试了没有用
直接在请求拦截进行添加
axios.interceptors.request.use(config => {
  config.headers['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'
  return config
}, error => {
  return Promise.reject(error)
})

但是在发送请求时任然有问题,会把传递的参数直接作为对象键值就像这样 {params}:(params为一个对象)

所以通过引入qs转化一下

import qs from 'qs'
Vue.prototype.qs = qs
_this.axios.post(_url, this.qs.stringify(params)).then((res) => {
}).catch((err) => {
  })

 

 
posted @ 2019-12-17 16:55  言穹  阅读(1026)  评论(0编辑  收藏  举报