加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
app.js 1.14 KB
一键复制 编辑 原始数据 按行查看 历史
自动部署 提交于 2018-11-21 14:05 . x
const Koa = require('koa')
const app = new Koa()
const views = require('koa-views')
const json = require('koa-json')
const onerror = require('koa-onerror')
const bodyparser = require('koa-bodyparser')
const logger = require('koa-logger')
const jwt = require('koa-jwt');
const env = require('./config/env');
// error handler
onerror(app)
app.use(jwt({ secret: env.noncestr }).unless({
path: [
/^\/api\/auth\/*/, /^\/*/, /^\/html\/*/, /^\/api\/callback\/*/
]
}))
// middlewares
app.use(bodyparser({
enableTypes: ['json', 'form', 'text']
}))
app.use(json())
app.use(logger())
app.use(require('koa-static')(__dirname + '/public'))
app.use(views(__dirname + '/views', {
extension: 'pug'
}))
// logger
app.use(async (ctx, next) => {
const start = new Date()
await next()
const ms = new Date() - start
console.log(`${ctx.method} ${ctx.url} - ${ms}ms`)
})
// routes
let files = fs.readdirSync('./routes')
files.map(item => {
const router = require(`./routes/${item.substr(0, item.indexOf('.'))}`)
app.use(router.routes())
})
// error-handling
app.on('error', (err, ctx) => {
console.error('server error', err, ctx)
});
module.exports = app
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化