| // 引用expess框架 |
| const express = require('express'); |
| // 处理路径 |
| const path = require('path'); |
| // 引入body-parser模块 用来处理post请求参数 |
| const bodyPaser = require('body-parser'); |
| // 导入express-session模块 |
| const session = require('express-session'); |
| // 创建网站服务器 |
| const app = express(); |
| // 数据库连接 |
| require('./model/connect'); |
| // 处理post请求参数 |
| app.use(bodyPaser.urlencoded({ extended: false })); |
| // 配置session |
| app.use(session({ |
| secret: 'secret key', |
| saveUninitialized: false, |
| cookie: { |
| maxAge: 24 * 60 * 60 * 1000 |
| } |
| })); |
| |
| // 告诉express框架模板所在的位置 |
| app.set('views', path.join(__dirname, 'views')); |
| // 告诉express框架模板的默认后缀是什么 |
| app.set('view engine', 'art'); |
| // 当渲染后缀为art的模板时 所使用的模板引擎是什么 |
| app.engine('art', require('express-art-template')); |
| |
| // 开放静态资源文件 |
| app.use(express.static(path.join(__dirname, 'public'))) |
| |
| // 引入路由模块 |
| const home = require('./route/home'); |
| const admin = require('./route/admin'); |
| |
| // 拦截请求 判断用户登录状态 |
| app.use('/admin', require('./middleware/loginGuard')); |
| |
| // 为路由匹配请求路径 |
| app.use('/home', home); |
| app.use('/admin', admin); |
| |
| app.use((err, req, res, next) => { |
| // 将字符串对象转换为对象类型 |
| // JSON.parse() |
| const result = JSON.parse(err); |
| res.redirect(`${result.path}?message=${result.message}`); |
| }) |
| |
| // 监听端口 |
| app.listen(3000); |
| console.log('网站服务器启动成功, 请访问localhost') |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南