踩坑Axios提交form表单几种格式 前后端分离的开发前后端, 前端使用的vue,后端的安全模块使用的SpringSecurity,使用postman测试后端的权限接口时发现都正常,但是使用vue+
默认格式Request Payload
const service = axios.create({})
doLogin (pojo) {
return request({
url: '/api/user/login',method: 'post',data: pojo
})
npm install --save qs
const service = axios.create({})
doLogin (pojo) {
return request({
url: '/api/user/login',data: qs.stringify(pojo)
})
}
或者
doLogin (pojo) {
return request({
url: '/api/user/login',data: pojo,transformRequest: [function (data) {
data = qs.stringify(data);
return data;
}],})
}
其他类型的Content-Type对应的表单数据格式
const service = axios.create({
headers: {
"Content-Type": "multipart/form-data; charset=utf-8;"
}
})
doLogin (pojo) {
return request({
url: '/api/user/login',data: qs.stringify(pojo)
})
}
const service = axios.create({
headers: {
"Content-Type": "multipart/form-data; charset=utf-8;"
}
})
doLogin (pojo) {
return request({
url: '/api/user/login',data: pojo
})
}
---
const service = axios.create({
headers: {
"Content-Type": "multipart/form-data; charset=utf-8;"
}
})
doLogin (pojo) {
return request({
url: '/api/user/login',data:pojo
})
}
const service = axios.create({
headers: {
"Content-Type": "application/x-www-form-urlencoded; charset=utf-8;"
}
})
doLogin (pojo) {
return request({
url: '/api/user/login',data: qs.stringify(pojo)
})
}