Node JS HTTP GET request body

Node JS HTTP GET request body

本文关键字:request body GET HTTP JS Node      更新时间:2023-09-26

我正在使用node.js中的express模块,我正在尝试读取HTTP GET请求的正文,并根据正文的内容向用户发送答案。我是node.js的新手,这对我不起作用。

我知道我应该使用HTTP POST(当我使用POST时它有效),但我试图在node.js中模仿的服务器使用GET,所以我必须坚持下去。在node.js中有办法做到这一点吗?谢谢!

这是我做的一个示例代码。当我使用app.post时,我看到了主体的日志,但是当我使用app.get时,我根本看不到日志!

app.get('/someURL/', function(req, res){
  var postData = '';
  req.on('data', function(chunk) {
    console.log("chunk request:");
    console.log(chunk);
    postData += chunk;
  });
  req.on('end', function() {
    console.log("body request:");
    console.log(postData);
  });
  //Manipulate response based on postData information
  var bodyResponse = "some data based on request body"
  res.setHeader('Content-Type', 'application/json;charset=utf-8');
  res.setHeader('Content-Length', bodyResponse.length);
  res.send(bodyResponse);
};

您正在使用的Node的HTML解析器版本不支持GET请求中的正文。该特性在最新的不稳定v0.11分支中可用。

  • https://github.com/joyent/node/issues/7575
  • https://github.com/joyent/node/issues/5767