问题:
项目前端使用Vue框架,后端使用node.js搭建本地服务器。前端通过 axios 方式请求后端数据的过程中,发现如果是 get 请求,服务器端能够通过 req.query 获取前端传递的参数再向数据库获取数据;但是,如果是 post 请求,服务器却不能通过 req.body 获取参数。
解决办法:
前端 引用 “qs” ,然后在发送 axios 请求时,使用 qs.stringify()将数据包裹起来。
举例如下:
import qs from ‘qs‘
addSubmit () { this.$refs.addForm.validate(async valid => { if (valid) {
// 下面是包裹数据的部分 const { data } = await this.$http.post(‘addUser‘,qs.stringify(this.addForm))
if (data.code !== 200) return this.$message.error(data.message) this.$message.success(data.message) this.getData() } }) }