简体   繁体   English

正文解析器request.body为空

[英]body-parser request.body is empty

I use axios.get() send data to server nodejs, i use request.body to use but request.body return {} for me. 我使用axios.get()将数据发送到服务器nodejs,我使用request.body来使用,但request.body为我返回{}。

in server.js file 在server.js文件中

const express = require('express');
const bodyParser = require('body-parser');
const app = express();


const setting = {
  port : 20101
}

app.set('port', (process.env.PORT || setting.port));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));

app.use(function(req, res, next){
  res.setHeader('Access-Control-Allow-Origin','*');
  res.setHeader('Cache-Control', 'no-cache');
  next();
});

app.get('/search', function(req, res){
   if(!req.body) return res.sendStatus(400);
   console.log(req.body, ' <--- req.body'); // return {} <--- req.body
});


app.listen(setting.port, function() {
   console.log('listening on port : ' + setting.port);
});

and api file 和api文件

 axios.get(apiPath('/search'),{
    keyword
  })
  .then(function(response){
    console.log(response, '<--- response');
  })
  .catch(function(error){
    console.log(error, '<--- error');
  })

Please suggest how I should solve the problem. 请提出我应该如何解决这个问题。

您使用了Get方法。将其更改为Post方法

app.post('/search', function{});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM