Javascript 在node.js中循环登录提示?

Javascript 在node.js中循环登录提示?,javascript,node.js,Javascript,Node.js,我不太确定这个问题的标题,可以编辑 这是我目前使用的登录系统 if (accountq === "Add", " Add", " Add "){ var usrin = prompt("Username: ") } if (usrin === usrname){ var passin = prompt("Ah, hello. Password?: ") } do { if (passin !== pswdb){ var passin = prompt

我不太确定这个问题的标题,可以编辑

这是我目前使用的登录系统

if (accountq === "Add", " Add", " Add "){
    var usrin = prompt("Username: ")
}

if (usrin === usrname){
    var passin = prompt("Ah, hello. Password?: ")
}

do {  
    if (passin !== pswdb){
       var passin = prompt("Sorry, that pass does not match.")
    }
}
while(passin === pswdb){
    console.log("Username and password have been authenticated")
    var addname = prompt("Name: ")
    console.log(
        "Okay, noted that. Please give us the direct download link"
    )

    var directlink = prompt("Direct Link: ")
    console.log("Thank you! Will add that.")
} 

while(passin !== pswdb){
    wrongpass()
} //this was my attempt to trigger the prompt again, but it failed.

我正在尝试提示输入密码,直到输入了正确的密码,然后继续执行代码的其余部分。我已经尝试了一段时间,但运气不佳,有人能给我指出正确的方向吗。

这个怎么样?它简单、小巧,似乎与您尝试的解决方案相似:

var prompt = require('prompt-sync')()

var expectedPass = 'myPassword'

while (true) {
  var username = prompt('Username:')
  var password = prompt('Password:')
  if (password == expectedPass) break
  else console.log('Sorry, that pass does not match.')
}

console.log('Match!')

/* ... rest of code ... */
请注意以下安全和性能位:

  • prompt sync
    是一个阻塞提示,这意味着任何其他异步活动都将被阻塞,直到用户响应为止。除非您在此过程中正在执行其他操作,否则这不会是一个提示

  • 安全方面,用户只需打开文件并读取密码即可绕过此安全提示


  • 如果其中任何一个都是问题,那么您可能正在寻找不同的解决方案。如果是这样,请告诉我

    我正在使用一个数据库,但是的,这是完美的作品!非常感谢。