gpt4 book ai didi

javascript - 类型错误 : Cannot read property 'username' of undefined from Form Submit

转载 作者:行者123 更新时间:2023-12-02 14:01:47 25 4
gpt4 key购买 nike

我正在提交一个表单,但我无法将表单“req.body”用户名和密码属性分配给数据库(密码上没有哈希值,只是试图让 MEAN CRUD 应用程序为初学者工作) .

我的表格如下:

表单

<form action="/signup" method="post">
<input type="text" name="username" placeholder="Username" />
<input type="password" name="password" placeholder="Password" />
<button type="submit" value="Sign Up" />
</form>

用户架构 (./models/user.js)

var mongoose = require("mongoose");

var UserSchema = new mongoose.Schema({
username: String,
password: String
});

module.exports = mongoose.model('User', UserSchema);

app.js(仅显示对用户模型和“/signup”发布功能的引用

var User = require("./models/user");
app.post("/signup", function(req, res) {
var user = new User();
user.username = req.body.username;
user.password = req.body.password;
user.save(function(err) {
if (err) {
res.send(err);
}
res.redirect("/profile", { message: 'User successfully registered!', data: user });
});
});

当我运行应用程序时:

node app.js

一切都运行良好。所有端点、路由均正常工作。

但是,当我单击上述表单的提交按钮时,我的终端中收到以下错误:

TypeError: Cannot read property 'username' of undefined
at Layer.handle [as handle_request](/node_modules/express/lib/router/layer.js:95:5)
at next (/node_modules/express/lib/router/route.js:131:13)
at Route.dispatch (/node_modules/express/lib/router/route.js:112:3)
at Layer.handle [as handle_request] (/node_modules/express/lib/router/layer.js:95:5)

如何确保req.body.usernamereq.body.password成功传递到mongodb数据库?

感谢您的帮助。

最佳答案

这是您需要执行的操作。

首先,安装body-parser

$ npm install --save body-parser

然后在你的aap.js文件中

app.post('/', function(req, res){
var username= req.param('username', null);
var username= req.param('password', null);
});

关于javascript - 类型错误 : Cannot read property 'username' of undefined from Form Submit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40365658/

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