如何解析节点js中的req.body

时间:2020-02-24 16:57:23

标签: node.js reactjs axios

我正在将axios中的10.0.0.12值从react传递到node,当我尝试在node上打印req.body时,它显示[object,object]如何从object获取值?

这是我发送要求的方式: 轴距

  .get("/ashjg/GetTfsItem",
       {BuildNumber:event.target.value[event.target.value.length-1].BuildNumber},{headers: {'Content-Type':'application/json'}},
    )
     .then(response => {
         console.log("responce data"+response.data);
       if(response.status==200){
           this.setState({TfsItemdata : response.data});
       }else{
           this.setState({errorMessage:"Data Not Available "})
       }
     })
     .catch(error => {
       this.setState({errorMessage:"Data Not Available for Crash Id  "})
     });

    }

节点Js端:

router.get("/GetTfsItem",function(req,res,next){
    console.dir( "Inside GetTfsItem " + Jreq.body );
}

3 个答案:

答案 0 :(得分:0)

尝试像这样使用 body-parser

var express = require('express')
var bodyParser = require('body-parser')
 
var app = express()
 
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
 
// parse application/json
app.use(bodyParser.json())
 
app.use(function (req, res) {
  res.setHeader('Content-Type', 'text/plain')
  res.write('you posted:\n')
  res.end(JSON.stringify(req.body, null, 2))
})

请记住,您需要安装body-parser:

npm i body-parser

答案 1 :(得分:0)

如果您使用的是express.js,则可以这样操作:

const express = require('express')
const app = express()
const port = 3000

app.use(express.json())
app.use(express.urlencoded({ extended: false }))

app.get('/', (req, res) => res.send('Hello World!'))

app.listen(port, () => console.log(`Example app listening on port ${port}!`))

答案 2 :(得分:0)

app.post('/handle',function(request,response){
var query1=request.body.var1;
var query2=request.body.var2;
});