Wie reiche ich eine Postanforderung für mehrere Formularfelder mit einer Schaltfläche ein?Wie gehe ich mit der POST-Anfrage einer Formularschaltfläche in Node.js und Express um?
Ich versuche, eine Anmeldeseite zu erstellen, auf der der Benutzer auf eine einzelne Schaltfläche klickt, um seine E-Mail-Adresse und sein Kennwort einzugeben. Ich benutze Heroku mit Node.js und Express.
Ich erhalte die folgende Fehlermeldung, wenn ich versuche, und führen Sie die App
login.ejs:
<link rel="stylesheet" type="text/css" href="/stylesheets/login.css" />
<div class="wrapper">
<form class="form-signin">
<h2 class="form-signin-heading">Login</h2>
<input type="text" class="form-control" name="email" placeholder="Email Address" required="" autofocus="" />
<input type="password" class="form-control" name="password" placeholder="Password" required=""/>
<label class="checkbox">
<input type="checkbox" value="remember-me" id="rememberMe" name="rememberMe"> Remember me
</label>
<button class="btn btn-lg btn-primary btn-block" type="submit" value="Submit">Login</button>
</form>
index.js
var express = require('express');
var app = express();
app.use(express.bodyParser());
app.set('port', (process.env.PORT || 5000));
app.use(express.static(__dirname + '/public'));
// views is directory for all template files
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.post('form-signin', function(request, response){
console.log(request.query.email);
console.log(request.query.password);
}
app.get('/', function(request, response) {
response.render('pages/index')
});
app.listen(app.get('port'), function() {
console.log('Node app is running on port', app.get('port'));
});
Ich glaube, das Problem hat mit der folgenden Zeile in index.js zu tun:
app.post('form-signin', function(request, response){
console.log(request.query.email);
console.log(request.query.password);
}
das hat den Trick! Vielen Dank – Jcr