代码拉取完成,页面将自动刷新
console.log('-------------------') //控制台打印起始
const koa = require('koa') // 引用koa作为web开发框架(express原班人马打造,克服回调的一些问题)
const path = require('path')
require('./config/alias') // 引用别名
const toJson = require('./config/apiJson')
const utils = require('./config/utils')
const importain = require('./config/importainerFunction')
const koa_static = require('koa-static')
const koaBody = require('koa-body')
const jwt = require('koa-jwt')
const router = require('./routers/router')
// 静态资源目录对于相对入口文件index.js的路径
const staticPath = './static'
// 创建koa实例
const app = new koa()
/** 引入全局对象成Json返回模块 */
global.toJson = toJson
global.utils = utils
/** 启动静态文件访问 */
app.use(koa_static(
path.join(__dirname, staticPath)
))
/** 捕获异常 */
app.use(importain.handler)
/** 权限控制 */
app.use(importain.author)
/** 上传文件模块中间件和处理post请求体的数据 */
app.use(koaBody({
mutipart: true,
pathchNode: true,
multipart: true,
formidable: {
uploadDir: path.join(__dirname, `${staticPath}/upload`), // 设置文件上传目录
keepExtensions: true, // 保持文件的后缀
maxFileSize: 200 * 1024 * 1024, // 设置文件大小限制,默认为2M
onFileBegin: (name, file) => { // 文件上传前的设置
// console.log(`name: ${name}`);
// console.log(file);
}
},
onError: function (err) {
console.err(err)
}
}))
/** 加密秘钥 */
const secret = 'see_you'
/** 注册秘钥和白名单 */
app.use(jwt({ secret }).unless({ path: [/\/register/, /\/api\/login/, /\/find_same_name/, /\/swagger/, /^\/upload/, /\/api\/file\/downLoad\/*/] }))
/** 路由 & 接口api */
app.use(router.routes())
/** 监听异常 */
app.on('error', function (err) {
console.log('logging error ', err.message);
})
/** 监听3000端口 */
app.listen(8000)
console.log('服务启动在http://localhost:8000') // 控制台打印
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。