var createError = require('http-errors'); var express = require('express'); var path = require('path'); var logger = require('morgan'); var serveStatic = require('serve-static') var favicon = require('serve-favicon') var app = express(); // view engine setup //app.engine('html', require('express-art-template')); app.set('views', path.join(__dirname, 'views')); //app.set('view engine', 'html'); app.use(logger('dev')); app.use(express.json()); app.use(express.urlencoded({ extended: false })); // app.use('/static', express.static(path.join(__dirname, 'public')),{ // etag: false // }) app.use(favicon(path.join(__dirname, 'public', 'favicon.ico'))) app.use('/static', serveStatic(path.join(__dirname, 'public'),{ etag: false })) app.use(function(req, res, next) { req.headers['if-none-match'] = 'no-match-for-this'; next(); }); //路由,前台 let indexRouter = require('./routes/index'); app.use('/', indexRouter); //路由,后台 let muNodesRouter=require('./routes/mu/nodes.js'); app.use('/mod_mu/nodes', muNodesRouter); let muUsersRouter=require('./routes/mu/users.js'); app.use('/mod_mu/users', muUsersRouter); let muFuncRouter=require('./routes/mu/func.js'); app.use('/mod_mu/func', muFuncRouter); // catch 404 and forward to error handler app.use(function(req, res, next) { if (req.path && !req.path.endsWith('.map')){ 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 : {}; console.error(err.stack); // render the error page res.status(err.status || 500); res.render('error'); }); module.exports = app;