添加 Sequelize 连接 SQLite 文件数据库,库文件存放在项目目录下
添加简单的用户名密码登陆逻辑相关接口,用midway装饰器,koa框架
sequelize + express + body-parser + nodejs实现,注意npm包的安装
const Sequelize = require('sequelize');
const express = require('express');
const bodyParser = require('body-parser');
// 创建 Sequelize 实例,连接 SQLite 文件数据库
const sequelize = new Sequelize({
dialect: 'sqlite',
storage: './database.sqlite'
});
// 定义 User 模型
const User = sequelize.define('user', {
username: {
type: Sequelize.STRING,
allowNull: false,
unique: true
},
password: {
type: Sequelize.STRING,
allowNull: false
}
});
// 同步模型到数据库
sequelize.sync().then(() => {
console.log('Database synced');
}).catch((err) => {
console.error('Unable to sync database:', err);
});
// 创建 Express 应用程序
const app = express();
// 解析请求体中的 JSON 数据
app.use(bodyParser.json());
// 处理登录请求
app.post('/login', async (req, res) => {
const { username, password } = req.body;
const user = await User.findOne({ where: { username } });
if (!user) {
res.status(401).send('Invalid username or password');
return;
}
if (user.password !== password) {
res.status(401).send('Invalid username or password');
return;
}
res.send('Login successful');
});
// 启动服务器
app.listen(3000, () => {
console.log('Server started on port 3000');
});