技术栈:node、vue 

问题如下:

前端使用axios.post 通过接口给后端传值,后端req.body接收值。然后后端再在日志里面打印出来。我使用postman测试都好使,但是真正前后端调试的时候,后端日志打印出来的数据为空。

postman:

后端日志打印:

可以看到数据有打印。

但是前端真正传值的时候:

看出前端把值传过去了,但是后端为空:

出现这个问题主要是前后端值类型不一致:

后端我设置的请求头:

// 设置返回格式

res.setHeader('Content-type', 'application/json')

所以前端应该也设置一下传值的格式:

 const data = JSON.stringify(this.ruleForm)
 axios.post('/api/api/blog/new', data, {
   // 设置headers
    headers: {
      'Content-Type': 'application/json'
    }
 }).then((res) => {
     console.log(res)
 }).catch((err) => {
     console.log(err)
 })

然后就可以正常打印出来啦~

Logo

前往低代码交流专区

更多推荐