默认参数传到后台是json格式的,
1、需要修改content-type为'application/x-www-form-urlencoded'。这里我只设置了post请求的修改content-type
// request拦截器
service.interceptors.request.use(
config => {
if (store.getters.token) {
config.headers['AdminToken'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
// 只有在post请求的时候才设置
if (config.method === 'post') {
config.headers['Content-Type'] = 'application/x-www-form-urlencoded'
}
return config
},
error => {
// Do something with request error
console.log(error) // for debug
Promise.reject(error)
}
)
2、引入axios ps 转换数据格式
import Qs from 'qs'
// 创建axios实例
const service = axios.create({
baseURL: process.env.BASE_API, // api 的 base_url
timeout: 50000, // 请求超时时间
// config里面有这个transformRquest,这个选项会在发送参数前进行处理。
// 这时候我们通过Qs.stringify转换为表单查询参数
transformRequest: [function(data) {
data = Qs.stringify(data)
return data
}]
})