Node.js 如何构建密码生成器
本文将教我们如何使用Node.js创建一个密码生成器。
方法: 为了创建这个应用程序,我们将设置一个由字母、数字和字符组成的字符串,然后我们将使用Math.floor()和Math.random()函数从该字符串中随机获取12位字符,然后在浏览器上显示输出。
实现: 下面显示了上述策略的应用程序。
步骤1:项目设置:
初始化NPM: 在终端创建和定位到您的项目文件夹,然后输入以下命令:
npm init -y
它初始化我们的节点应用程序并创建一个package.json文件。
创建服务器文件: 在项目文件夹中,使用以下命令创建一个名为’app.js’的文件:
touch app.js
这个文件包含用于创建密码生成器的Node.js代码。
步骤2:引入HTTP模块: 我们必须将这个模块引入为常量,然后用它来调用HTTP模块的函数。
const http = require('http');
步骤3:设置密码生成器: 创建一个函数,返回一个包含字符、数字和字母的随机字符串。使用以下算法随机生成该字符串。
function generatePassword() {
var length = 12,
charset =
"@#&*0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ@#&*0123456789abcdefghijklmnopqrstuvwxyz",
password = "";
for (var i = 0, n = charset.length; i < length; ++i) {
password += charset.charAt(Math.floor(Math.random() * n));
}
return password;
}
步骤4: 现在,使用HTTP的 “createServer” 方法, **** 在这个方法内部,我们将调用 “generatePassword” 方法,并使用一个重新加载页面的表单,以便在点击时生成一个新密码。
const server = http.createServer((req, res) => {
res.end(`
<!doctype html>
<html>
<body>
<h1> ${generatePassword()} </h1>
<form action="/">
<button>Generate New Password</button>
</form>
</body>
</html>
`);
});
步骤5:设置监听器: 我们需要设置一个监听器,该监听器在端口3000上运行应用程序。
server.listen(3000, () => {
console.log("lishing on http://localhost:3000");
});
运行应用程序的步骤:
在终端内键入以下命令
node app.js
完整代码:
const http = require('http');
function generatePassword() {
var length = 12,
charset =
"@#&*0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ@#&*0123456789abcdefghijklmnopqrstuvwxyz",
password = "";
for (var i = 0, n = charset.length; i < length; ++i) {
password += charset.charAt(Math.floor(Math.random() * n));
}
return password;
}
const server = http.createServer((req, res) => {
res.end(`
<!doctype html>
<html>
<body>
<h1> ${generatePassword()} </h1>
<form action="/">
<button>Generate New Password</button>
</form>
</body>
</html>
`);
});
server.listen(3000, () => {
console.log("lishing on http://localhost:3000");
});
输出结果: