問題:
項目前端使用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() } }) }