forked from admin/deShanXiao
初始版本,目前线上可用
This commit is contained in:
75
backEnd/src/router/index.ts
Normal file
75
backEnd/src/router/index.ts
Normal file
@@ -0,0 +1,75 @@
|
||||
import * as express from "express";
|
||||
import login from "./login/login";
|
||||
import user from "./user/user";
|
||||
import systemMenue from "./system-menue/system-menue";
|
||||
import role from "./role/role";
|
||||
import deceased from "./deceased/deceased";
|
||||
import serviceItem from "./serviceList/serviceItem";
|
||||
import serviceCategory from "./serviceList/serviceCategory";
|
||||
import deceasedRetail from "./deceasedRetail/deceasedRetail";
|
||||
import checkout from "./checkout/checkout";
|
||||
import retailCheckout from "./retailCheckout/retailCheckout";
|
||||
import noDeceasedRetail from "./noDeceasedRetail/noDeceasedRetail";
|
||||
import cancleExamine from "./cancle/cancleExamine";
|
||||
import CheckoutRetail from "./CheckoutRetail/CheckoutRetail";
|
||||
import publicList from "./public/public";
|
||||
import Stats from "./stats/stats";
|
||||
|
||||
let jwt = require("jsonwebtoken");
|
||||
|
||||
let router = express.Router();
|
||||
const secretKey = "myNameIsLiJiaTu";
|
||||
|
||||
// 统一请求入口
|
||||
router.use("/", (req, res, next) => {
|
||||
const token = req.headers.authorization;
|
||||
const refreshToken = req.headers.refreshtoken;
|
||||
// 非登录并且无token证明用户未登录,禁止操作,不需要这个,注释即可
|
||||
if (!token && !refreshToken && req.path !== "/login")
|
||||
return res.send({ code: 401, msg: "未登录,禁止操作访问!" });
|
||||
|
||||
if (token) {
|
||||
jwt.verify(token, secretKey, (err, decoded) => {
|
||||
if (err) {
|
||||
if (!refreshToken) {
|
||||
return res.status(401).send({ code: 401, msg: "请重新登录" });
|
||||
}
|
||||
jwt.verify(refreshToken, secretKey, (refErr, refDecoded) => {
|
||||
if (refErr) {
|
||||
return res
|
||||
.status(401)
|
||||
.send({ code: 401, msg: "登录已失效,请重新登录。" });
|
||||
} else {
|
||||
let userId = refDecoded.userId;
|
||||
const newToken = jwt.sign({ userId }, secretKey, {
|
||||
expiresIn: "1h",
|
||||
});
|
||||
res.setHeader("refreshToken", newToken);
|
||||
next();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
next();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
next();
|
||||
}
|
||||
});
|
||||
router.use("/login", login);
|
||||
router.use("/user", user);
|
||||
router.use("/system-menue", systemMenue);
|
||||
router.use("/role", role);
|
||||
router.use("/public/", publicList);
|
||||
router.use("/deceased", deceased);
|
||||
router.use("/deceased-retail", deceasedRetail);
|
||||
router.use("/service-item", serviceItem);
|
||||
router.use("/service-category", serviceCategory);
|
||||
router.use("/checkout", checkout);
|
||||
router.use("/retail-checkout", retailCheckout);
|
||||
router.use("/no-deceased-retail", noDeceasedRetail);
|
||||
router.use("/cancel", cancleExamine);
|
||||
router.use("/checkout-retail", CheckoutRetail);
|
||||
router.use("/stats", Stats);
|
||||
|
||||
export default router;
|
||||
Reference in New Issue
Block a user