1 Star 0 Fork 0

jimpeo/affectation-back-end

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
app.js 2.85 KB
一键复制 编辑 原始数据 按行查看 历史
jimpeo 提交于 2021-08-24 18:02 . 增加字典忌口
const express = require('express')
const path = require('path')
const cors = require('cors')
const cookieParase = require('cookie-parser')
const session = require('express-session')
// 引入路由
const authRouter = require('./routes/auth')
const userRouter = require('./routes/user')
const searchRouter = require('./routes/search')
const websiteRouter = require('./routes/website')
const musicRouter = require('./routes/music')
const taskRouter = require('./routes/task')
const dictRouter = require('./routes/dict')
const testRouter = require(path.join(__dirname, './routes/test'))
// 引入token验证中间件
const { token } = require(path.join(__dirname, '/model/token.js'))
const { NonExistent } = require(path.join(__dirname, '/model/resModel'))
// 创建服务端实例对象
const app = express()
// 开启静态资源服务(public目录中的所有资源都可以通过url访问)
app.use('/affectation-api/public', express.static(path.join(__dirname, 'public')))
// 使用cookie
app.use(cookieParase())
app.use(session({
// 用来对session数据进行加密的字符串,必填属性
secret: 'affection',
name: 'captcha',
// 设置返回到前端 key 的属性,maxAge 有效期
cookie: { maxAge: 30000 },
// 强制保存session,及时session没有变化
resave: false,
// 强制将未初始化的 session 存储。当新建了一个 session 且未设定属性或值时,它就处于未初始化状态。在设定一个 cookie 前,这对于登陆验证,减轻服务端存储压力,权限控制是有帮助的
saveUninitialized: true,
// 在每次请求时强行设置cookie,这将重置 cookie 过期时间
rolling: true
}))
// cors解决跨域问题
app.use(cors())
// app.all表示监听所有请求方式,*表示所有路径都匹配
app.all('*', function (req, res, next) {
// 设置响应头
// 设置运行访问的域名
res.header('Access-Control-Allow-Origin', 'http://192.31.112.3333')
// 设置运行访问的请求头
res.header('Access-Control-Allow-Headers', 'Content-Type')
// 设置运行的请求方式
res.header('Access-Control-Allow-Methods', '*')
res.header('Access-Control-Allow-Credentials', 'true')//允许携带cookie
next()
})
// 处理请求参数,json格式与www都需要单独处理,不然接收不到参数
app.use(express.urlencoded({ extended: true }))
app.use(express.json())
app.use('/affectation-api', authRouter)
app.use('/test', testRouter)
app.use(token)
app.use('/affectation-api/user', userRouter)
app.use('/affectation-api/search', searchRouter)
app.use('/affectation-api/website', websiteRouter)
app.use('/affectation-api/music', musicRouter)
app.use('/affectation-api/task', taskRouter)
app.use('/affectation-api/dict', dictRouter)
app.use(function (req, res, next) {
res.json(new NonExistent())
})
// 监听服务器端口
app.listen(3000, '0.0.0.0', () => {
console.log('running...')
})
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/jimpeo/affectation-back-end.git
git@gitee.com:jimpeo/affectation-back-end.git
jimpeo
affectation-back-end
affectation-back-end
master

搜索帮助