📅  最后修改于: 2023-12-03 15:07:27.601000             🧑  作者: Mango
司机简易钥匙是一款方便快捷的钥匙管理工具,主要针对司机群体,可以存储和管理司机的钥匙信息。
克隆代码库:
git clone https://github.com/username/repo.git
安装依赖包:
npm install
启动开发服务器:
npm run serve
编译打包:
npm run build
以下是用到的代码片段示例:
// 定义钥匙信息数据模型
const keySchema = new mongoose.Schema({
name: { type: String, required: true },
category: { type: String, required: true },
description: { type: String },
createdAt: { type: Date, default: Date.now },
});
// 定义钥匙信息API
const keyRouter = express.Router();
keyRouter.route("/")
.get((req, res) => {
// 获取所有钥匙信息
Key.find((err, keys) => {
if (err) return res.status(500).send(err);
return res.json(keys);
});
})
.post((req, res) => {
// 新增钥匙信息
const key = new Key(req.body);
key.save((err, key) => {
if (err) return res.status(500).send(err);
return res.json(key);
});
});
// 定义管理员API
const adminRouter = express.Router();
adminRouter.post("/login", (req, res) => {
// 验证管理员身份
const { username, password } = req.body;
Admin.findOne({ username }, (err, admin) => {
if (err) return res.status(500).send(err);
if (!admin) return res.status(401).send("Invalid username");
bcrypt.compare(password, admin.password, (err, isMatch) => {
if (err) return res.status(500).send(err);
if (!isMatch) return res.status(401).send("Invalid password");
const token = jwt.sign({ adminId: admin._id }, process.env.JWT_SECRET);
return res.json({ token });
});
});
});
感谢您的关注和使用!