如何从HTML文本框中获取输入并将其存储在Node.js中的变量中?

时间:2019-11-29 12:45:32

标签: node.js express

我该如何在客户端发布一个值,并在服务器端获取它。

示例:

<form action="/myform" method="POST">
    <input type="text" name="mytext" required />
    <input type="submit" value="Submit" />
</form>

var express = require('express'); 
var bodyParser = require('body-parser');
var app = express(); 
app.get('/myform', function(req, res){ 
    var myText = req.body.mytext; //mytext is the name of your input box
    res.send('Your Text:' +myText); 
}); 
app.listen(3000)

2 个答案:

答案 0 :(得分:0)

<form action="http://127.0.0.1:3000/myform" method="post">

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

//Note that in version 4 of express, express.bodyParser() was
//deprecated in favor of a separate 'body-parser' module.
app.use(bodyParser.urlencoded({ extended: true })); 

//app.use(express.bodyParser());

app.post('/myform', function(req, res) {
  var myText = req.body.mytext; //mytext is the name of your input box
    res.send('Your Text:' +myText); 
});

答案 1 :(得分:0)

除了错误的方法名称之外,您的代码似乎还不错。在HTML格式中,您提到了POST方法,但是在服务器上您正在监听GET方法。因此,只需将app.get('/myform',更改为app.post('/myform',

应该可以。