var createError = require('http-errors'); var express = require('express'); var path = require('path'); var cookieParser = require('cookie-parser'); var logger = require('morgan'); var indexRouter = require('./routes/home/index'); var serviceRouter = require('./routes/home/service'); var productRouter = require('./routes/home/product'); var infoRouter = require('./routes/home/info'); var aboutRouter = require('./routes/home/about'); var contactRouter = require('./routes/home/contact'); var adminApiMessageRouter = require('./routes/home/api/message'); var adminRouter = require('./routes/admin/page/index'); var admingUsersRouter = require('./routes/admin/page/user'); var admingHomeRouter = require('./routes/admin/page/home'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'pug'); app.use(logger('dev')); app.use(express.json()); app.use(express.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); // 官网页面的路由 app.use('/', indexRouter); app.use('/', aboutRouter); app.use('/', productRouter); app.use('/', serviceRouter); app.use('/', contactRouter); app.use('/', infoRouter); // 官网api接口路由 app.use('/home/api', adminApiMessageRouter); // 管理后台页面的路由 app.use('/admin', adminRouter); app.use('/admin', admingUsersRouter); app.use('/admin', admingHomeRouter); // 管理后台api接口的路由 // ... // catch 404 and forward to error handler app.use(function(req, res, next) { next(createError(404)); }); // error handler app.use(function(err, req, res, next) { // set locals, only providing error in development res.locals.message = err.message; res.locals.error = req.app.get('env') === 'development' ? err : {}; // render the error page res.status(err.status || 500); res.render('error'); }); module.exports = app;