代码拉取完成,页面将自动刷新
var createError = require("http-errors");
var express = require("express");
var path = require("path");
var logger = require("morgan");
const _ = require("lodash")
var app = express();
// 设置模板的目录
app.set("views", path.join(__dirname, "views"));
// 设置使用art-template作为模板引擎,html后缀的文件为项目的模板
app.engine("html", require("express-art-template"));
app.use(logger("dev"));
// 注册session中间件
const session = require('express-session'); // 在app.js文件中进行配置
app.use(session({
secret: 'kuaijiancms', //密钥,名字可以自己更改
resave: false, // 默认值,不能更改
saveUninitialized: true // 默认值,不能更改
}));
// 注册cookie中间件
const cookieParser = require("cookie-parser");
app.use(cookieParser());
// 接收post数据
app.use(express.json({
limit: '50mb'
}));
app.use(express.urlencoded({
extended: false,
limit: '50mb'
}));
// 托管静态资源的目录
app.use(express.static(path.join(__dirname, "public")));
// 注册全局中间件:用于返回json数据
app.use(function(req, res, next) {
//封装返回数据的函数
res.cc = function(status = 200, msg = "成功", data = []) {
if (data.length > 0) {
res.json({
status,
msg,
data,
});
} else {
res.json({
status,
msg,
});
}
};
// 成功或者失败时的路由跳转
res.jump = function(message, url, time = 2) {
return res.render('message.html', {
message,
url,
time
})
}
// 判断用户是否登录了,如果登录了就放行,如果没有登录,就跳转到登录页面
// 排除掉路由为login的路由,因为login路由没有设置session和cookie
/* if (req.url !== '/login') {
if (!req.session.is_login && !req.cookies.is_login) {
return res.jump('请先登录', '/login')
}
} */
next()
});
// 路由模块
var loginRouter = require("./routes/login");
var indexRouter = require("./routes/index");
var cateRouter = require("./routes/cate");
var newsRouter = require("./routes/news");
app.use(loginRouter);
app.use(indexRouter);
app.use(cateRouter);
app.use(newsRouter);
// 错误中间件
const joi = require('joi')
app.use(function(err, req, res, next) {
// 未知错误,通常表示服务器端的错误
res.status(err.status || 500)
// 数据验证失败
if (err instanceof joi.ValidationError) {
return res.cc(400, err.message)
}
// 接口异常
res.cc(500, err.message)
// 如果需要返回页面错误的页面信息
res.render('error.html', {
error: err.message
});
});
module.exports = app;
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。