如何用POST方法传递参数?的NodeJS

时间:2017-03-09 14:46:41

标签: javascript node.js express post

所以,你可能会看到我是问题的创造者"我通过传递GET方法来解决这个问题"。但是现在遇到了一个问题"用POST方法传递"这是我的代码,看看出了什么问题。我想做的就是打印说:"你好(无论用户通过什么名称)..如果ExpressJS,没有工作,有人可以用Javascript方式给我看看吗?!

  

这是代码。

    var server = require('./server');
var router = require('./router');
var requestHandlers = require('./requestHandlers');


 var handle = {
  '/': requestHandlers.start,
  '/start': requestHandlers.start,
  '/upload': requestHandlers.upload,
  '/show': requestHandlers.show
};

var express = require('express')
var app = express()


app.post('/view/users/:name', function(req, res) {
    console.log(req.body.desc);
    res.end();
});

app.listen(8080, function () {
  console.log('listening on port 8000!')
}) 

我在错过时得到的错误是"无法获取/查看/用户/约翰"

2 个答案:

答案 0 :(得分:2)

您可以从req.params对象

访问路径变量:name
app.get('/view/users/:name', function(req, res) {
    console.log(req.params.name);
    res.end();
});

答案 1 :(得分:1)

您需要在路线前添加bodyParser:

var bodyParser = require('body-parser')
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

然后无论你传递给路线,bodyParser都会在请求对象中提供它。