axios post 后端接收不到数据

1.是因为数据格式不对,通俗来说,后端需要的是JSON字符串(formData类型),不是对象(Request Payload格式),而axios默认的post方法是以对象形式发送,比如
{
id:1,
lastid: 3
}
变成JSON对象(Request Payload)
方法一:
【用 URLSearchParams 传递参数】
let param = new URLSearchParams()
param.append('username', 'admin') param.append('pwd', 'admin')
axios({
method: 'post',
url: '/api/lockServer/search',
data: param
})
需要注意的是: URLSearchParams 不支持所有的浏览器,但是总体的支持情况还是 OK 的,所以优先推荐这种简单直接的解决方案
方法二:
【还需要额外的操作,(我们要将参数转换为query参数)】
引入 qs ,这个库是 axios 里面包含的,不需要再下载了。
import Qs from 'qs'
let data = { "username": "admin", "pwd": "admin" }
axios({
method: 'post',
url: '/api/lockServer/search',
data: Qs.stringify(data)
})

你可能感兴趣的:(axios post 后端接收不到数据)