如何在模块中使用变量(登录系统)

我正在尝试使用 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"

  }


}


守着一只汪
浏览 161回答 1
1回答

慕的地8271018

似乎您想使用 a 访问对象的属性string,您可以使用以下语法:jsonContent[post_username].password在尝试访问其值之前,您可能应该添加额外的检查以查看对象是否包含此属性,例如:if&nbsp;(Object.hasOwnProperty.call(jsonContent,&nbsp;post_username))&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.... &nbsp;&nbsp;}此外,在节点应用程序中,您可以只导入 JSON 文件,这是一个示例:var&nbsp;contents&nbsp;=&nbsp;require('/database/clans.json');
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript