anchundan
Version:
41 lines • 1.4 kB
JavaScript
const koaBody = require('koa-body');
const corsMiddle = require('anchundan/src/core/middleware/coremiddles/cors');
let Makerouter = require('anchundan/src/core/corerouter');
const optionHandle = require('anchundan/src/core/middleware/coremiddles/optionHandle');
const staticMiddle = require('anchundan/src/core/middleware/coremiddles/static');
module.exports = (application)=>{
let { config,server } = application;
server.use(koaBody({
multipart: true,
formidable: {
maxFileSize: 20000 * 1024 * 1024 // 设置上传文件大小最大限制,20M
},
formLimit: '100mb',
jsonLimit: '100mb',
textLimit: '100mb',
enableTypes: ['json', 'form', 'text'],
...config.body
}));
const {
cors,
static,
middlewares
} = config;
const router = Makerouter(application);
server.use(optionHandle);
server.use(staticMiddle(static));
server.use(corsMiddle(cors));
// 在router 执行之前,加载项目中间件
if(middlewares)
{
middlewares.forEach( name => {
const mw = application.middlewares[name];
if(mw){
const mdconfig = config[name];
server.use(mw.call(null,mdconfig,application));
}
});
}
server.use(router.routes());
server.use(router.allowedMethods());
};