core: 压缩响应内容

This commit is contained in:
undefined committed 2021-03-27 09:10:42 +08:00
1 parent 33bc45c5ab
commit 1ec793d039
2 files changed
+15 -12

No files matched your search

+13 -11
View File
@@ -10,6 +10,7 @@ import {
import { ObjectID } from 'mongodb';
import Koa, { Context } from 'koa';
import Body from 'koa-body';
import Compress from 'koa-compress';
import Router from 'koa-router';
import proxy from 'koa-proxies';
import cache from 'koa-static-cache';
@@ -230,15 +231,26 @@ export async function prepare() {
changeOrigin: true,
rewrite: (p) => p.replace('/fs', ''),
}));
app.use(Compress());
if (argv.public) {
app.use(cache(argv.public, {
maxAge: 0,
}));
} else {
app.use(cache(resolve(os.tmpdir(), 'hydro', 'public'), {
maxAge: 365 * 24 * 60 * 60,
maxAge: 30 * 24 * 60 * 60,
}));
}
if (argv.debug) {
app.use(async (ctx: Context, next: Function) => {
const startTime = new Date().getTime();
await next();
const endTime = new Date().getTime();
if (ctx.nolog || ctx.response.headers.nolog) return;
ctx._remoteAddress = ctx.request.ip;
logger.debug(`${ctx.request.method} ${ctx.request.path} ${ctx.response.status} ${endTime - startTime}ms ${ctx.response.length}`);
});
}
app.use(Body({
multipart: true,
formidable: {
@@ -786,16 +798,6 @@ export function Connection(
// TODO use postInit?
export function start() {
const port = system.get('server.port');
if (argv.debug) {
app.use(async (ctx: Context, next: Function) => {
const startTime = new Date().getTime();
await next();
const endTime = new Date().getTime();
if (ctx.response.headers.nolog) return;
ctx._remoteAddress = ctx.request.ip;
logger.debug(`${ctx.request.method} ${ctx.request.path} ${ctx.response.status} ${endTime - startTime}ms ${ctx.response.length}`);
});
}
app.use(router.routes()).use(router.allowedMethods());
server.listen(argv.port || port);
logger.success('Server listening at: %d', argv.port || port);