在Nodejs中将值从视图传递到节点而没有URL

Flo*_*ain 0 javascript ejs node.js express

我正在使用带有express和ejs的nodejs.

互联网上的每一个人都会问如何将价值从节点传递到视图,但相反呢?

例如,我要求我的用户在表单中输入一个字符串,当用户单击该按钮时,如何获取该字符串而不将其作为url中的参数传递?

表格:

<div class="container">
        <form style="width:50%">
            <div class="form-group">
                <label for="text">Name of the product</label>
                <input type="text" class="form-control" id="pName">
            </div>
            <div class="form-group">
                <label for="text">Reciever</label>
                <input type="text" class="form-control" id="reciever">
            </div>
            <div class="form-group">
                <label for="text">Location</label>
                <input type="text" class="form-control" id="location">
            </div>
            <!-- <div class="checkbox">
            <label><input type="checkbox"> Remember me</label>
        </div>-->
            <button type="submit" class="btn btn-default">Submit</button>
        </form>
Run Code Online (Sandbox Code Playgroud)

app.js

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

//ALL GLOBAL VARIABLES
var port = 8080;

app.get('/', function(req, res) {
    res.render('index.ejs');
});

app.get('/barcode', function(req,res) {
    res.render('barcode.ejs');
});
app.listen(port);
Run Code Online (Sandbox Code Playgroud)

我知道我可以这样做:

app.get('/url/:parameter', function(req.res) {
var foo = req.params.parameter;
}
Run Code Online (Sandbox Code Playgroud)

但如果我不想使用URL,是否可以检索数据?

dhi*_*ilt 5

使用POST作为html表单的方法

<form action="/myapi" method="post">
    <input type="text" class="form-control" id="pName" name="pName">
    <button type="submit" class="btn btn-default">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)

然后app.post在后端处理客户端表单"action"

app.post('/myapi', function(req, res) {
  res.send('The pName is "' + req.body.pName + '".');
});
Run Code Online (Sandbox Code Playgroud)