Как использовать переменную в модуле (Login System) - PullRequest
1 голос
/ 18 октября 2019

Я пытаюсь создать систему входа в систему, используя Node.js, но я не знаю, как использовать переменную в модуле fs (LINE 7). Ответ: «Не удается прочитать свойство« пароль »из неопределенного» * ​​1001 *

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"
  }

}

С уважением, Эрик

1 Ответ

0 голосов
/ 18 октября 2019

Кажется, вы хотите получить доступ к свойству объекта, используя string, вы можете использовать этот синтаксис для этого:

jsonContent[post_username].password

Возможно, вам следует добавить дополнительную проверку, чтобы увидеть, содержит ли объект это свойствопрежде чем пытаться получить доступ к его значению, что-то вроде:

if (Object.hasOwnProperty.call(jsonContent, post_username)) {
  ....
}

Кроме того, в узле приложениях вы можете просто импортировать файлы JSON, вот пример:

var contents = require('/database/clans.json');
...