gpt4 book ai didi

node.js - 为什么node.js bodyParser总是返回 'undefined'?

转载 作者:太空宇宙 更新时间:2023-11-03 22:53:14 25 4
gpt4 key购买 nike

In 'app.js' I have

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

'index.js' full codes

var express = require('express');
var router = express.Router();
var mysql = require('mysql');

router.get('/', function(req, res, next) {
res.render('index', { title: 'Here' });
});

router.post('/manager', function(req, res, next) {
var connection = mysql.createConnection({
host : 'localhost',
user : req.body.username,
password : req.body.password,
database : 'shops'
});
connection.connect(function(err){
if(!err)
res.render('manager', { title: 'Here' });
else
console.log("Error connecting database ...");
});
});

module.exports = router;

In 'index.html' login form

<form id='login' method='post' action='manager'>
Username<br>
<input id='username' type='text'><br>
Password<br>
<input id='password' type='password'><br>

<input type='submit' value='Login'>
<input type='reset' value='Reset'>
</form>
  • 在index.js第12-13行

  • req.body.用户名

  • req.body.password

每次我尝试从 html 表单解析数据时,它们都会返回“未定义”。我是 node.js 脚本编写的新手。我做错了什么吗?

最佳答案

您缺少name您的 <input> 上的属性标签。添加它们如下:

<form id='login' method='post' action='manager'>
Username<br>
<input id='username' name='username' type='text'><br>
Password<br>
<input id='password' name='password' type='password'><br>

<input type='submit' value='Login'>
<input type='reset' value='Reset'>
</form>

关于node.js - 为什么node.js bodyParser总是返回 'undefined'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34005261/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com