在当今的互联网时代,网站登录验证是确保用户信息安全的重要环节。Express框架作为Node.js的一个快速、极简的Web应用开发框架,可以帮助开发者轻松实现网站登录验证。本文将详细介绍如何使用Express框架实现网站登录验证,让你轻松成为网站安全防护的小能手。
一、准备工作
在开始之前,我们需要准备以下环境:
- Node.js环境:从官网下载并安装Node.js。
- Express框架:通过npm安装Express框架。
- 数据库:本文以MySQL为例,介绍如何连接数据库。
二、创建项目
- 创建项目文件夹,并进入该文件夹。
- 初始化npm项目,运行命令:
npm init -y。 - 安装Express框架:
npm install express。 - 安装MySQL模块:
npm install mysql。
三、连接数据库
- 在项目根目录下创建一个名为
db.js的文件。 - 在
db.js文件中,编写连接MySQL数据库的代码:
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '123456',
database: 'test'
});
connection.connect(err => {
if (err) {
console.error('数据库连接失败:', err);
return;
}
console.log('数据库连接成功!');
});
module.exports = connection;
四、创建登录页面
- 在项目根目录下创建一个名为
views的文件夹。 - 在
views文件夹中创建一个名为login.ejs的文件,并编写登录页面代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登录页面</title>
</head>
<body>
<form action="/login" method="post">
<label for="username">用户名:</label>
<input type="text" id="username" name="username" required>
<label for="password">密码:</label>
<input type="password" id="password" name="password" required>
<button type="submit">登录</button>
</form>
</body>
</html>
五、编写登录接口
- 在项目根目录下创建一个名为
routes的文件夹。 - 在
routes文件夹中创建一个名为login.js的文件,并编写登录接口代码:
const express = require('express');
const router = express.Router();
const connection = require('../db');
router.post('/login', (req, res) => {
const { username, password } = req.body;
connection.query('SELECT * FROM users WHERE username = ? AND password = ?', [username, password], (err, results) => {
if (err) {
console.error('查询数据库失败:', err);
return res.status(500).send('服务器错误');
}
if (results.length > 0) {
res.send('登录成功');
} else {
res.send('用户名或密码错误');
}
});
});
module.exports = router;
六、配置路由
- 在项目根目录下创建一个名为
app.js的文件。 - 在
app.js文件中,引入Express模块和路由模块,并配置路由:
const express = require('express');
const router = require('./routes/login');
const app = express();
app.use(express.static('public'));
app.use(express.urlencoded({ extended: true }));
app.set('view engine', 'ejs');
app.use('/', router);
app.listen(3000, () => {
console.log('服务器运行在 http://localhost:3000');
});
七、启动项目
- 在项目根目录下运行命令:
node app.js。 - 打开浏览器,访问
http://localhost:3000,即可看到登录页面。
八、总结
通过以上步骤,我们成功使用Express框架实现了网站登录验证。在实际项目中,可以根据需求添加更多功能,如注册、找回密码等。希望本文能帮助你轻松掌握Express框架的登录验证功能。
