我正在尝试使用Node.js创建登录系统,但是我不知道如何在fs模块(第7行)中使用该变量。响应为“无法读取未定义的属性'密码'”
app.post('/auth', function(request, response) {
var contents = fs.readFileSync(__dirname + '/database/clans.json');
var jsonContent = JSON.parse(contents);
var post_password = request.body.password;
var post_username = request.body.username;
var password = jsonContent._post_username_.password; //Issue is here
// if(post_password == ){
// }else{
// }
response.send(password)
// response.send(request.body.username);
});
<div class="login-form">
<h1>Clan Login</h1>
<form action="auth" method="POST">
<input type="text" name="username" placeholder="Username" required>
<input type="password" name="password" placeholder="Password" required>
<input type="submit">
</form>
</div>
Json文件:
{
"rtv":{
"username":"rtv",
"password":"rtv2019"
}
}
问候,埃里克
似乎您想使用来访问对象的属性string
,可以为此使用以下语法:
jsonContent[post_username].password
您可能应该在尝试访问其值之前添加一个额外的检查,以查看对象是否包含此属性,例如:
if (Object.hasOwnProperty.call(jsonContent, post_username)) {
....
}
另外,在节点应用程序中,您只能导入JSON文件,这是一个示例:
var contents = require('/database/clans.json');
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句