serve assets
This commit is contained in:
parent
dcafbada0d
commit
4db00f3482
@ -18,6 +18,7 @@ import type { DocumentAccessor, TagAccessor, UserAccessor } from "./model/mod";
|
|||||||
import { getTagRounter } from "./route/tags";
|
import { getTagRounter } from "./route/tags";
|
||||||
|
|
||||||
import { config } from "dotenv";
|
import { config } from "dotenv";
|
||||||
|
import { extname, join } from "node:path";
|
||||||
config();
|
config();
|
||||||
|
|
||||||
class ServerApplication {
|
class ServerApplication {
|
||||||
@ -38,7 +39,7 @@ class ServerApplication {
|
|||||||
|
|
||||||
this.diffManger = new DiffManager(this.documentController);
|
this.diffManger = new DiffManager(this.documentController);
|
||||||
this.app = new Koa();
|
this.app = new Koa();
|
||||||
this.index_html = readFileSync("index.html", "utf-8");
|
this.index_html = readFileSync("dist/index.html", "utf-8");
|
||||||
}
|
}
|
||||||
private async setup() {
|
private async setup() {
|
||||||
const setting = get_setting();
|
const setting = get_setting();
|
||||||
@ -195,26 +196,38 @@ class ServerApplication {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
private serve_static_file(router: Router) {
|
private serve_static_file(router: Router) {
|
||||||
const static_file_server = (path: string, type: string) => {
|
router.get("/assets/(.*)", async (ctx, next) => {
|
||||||
router.get(`/${path}`, async (ctx, next) => {
|
const setting = get_setting();
|
||||||
const setting = get_setting();
|
const ext = extname(ctx.path);
|
||||||
ctx.type = type;
|
ctx.type = ext;
|
||||||
ctx.body = createReadStream(path);
|
ctx.body = createReadStream(join("dist",`.${ctx.path}`));
|
||||||
ctx.set("x-content-type-options", "no-sniff");
|
ctx.set("x-content-type-options", "no-sniff");
|
||||||
if (setting.mode === "development") {
|
if (setting.mode === "development") {
|
||||||
ctx.set("cache-control", "no-cache");
|
ctx.set("cache-control", "no-cache");
|
||||||
} else {
|
} else {
|
||||||
ctx.set("cache-control", "public, max-age=3600");
|
ctx.set("cache-control", "public, max-age=3600");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
// const static_file_server = (path: string, type: string) => {
|
||||||
const setting = get_setting();
|
// router.get(`/${path}`, async (ctx, next) => {
|
||||||
static_file_server("dist/bundle.css", "css");
|
// const setting = get_setting();
|
||||||
static_file_server("dist/bundle.js", "js");
|
// ctx.type = type;
|
||||||
if (setting.mode === "development") {
|
// ctx.body = createReadStream(path);
|
||||||
static_file_server("dist/bundle.js.map", "text");
|
// ctx.set("x-content-type-options", "no-sniff");
|
||||||
static_file_server("dist/bundle.css.map", "text");
|
// if (setting.mode === "development") {
|
||||||
}
|
// ctx.set("cache-control", "no-cache");
|
||||||
|
// } else {
|
||||||
|
// ctx.set("cache-control", "public, max-age=3600");
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// };
|
||||||
|
// const setting = get_setting();
|
||||||
|
// static_file_server("dist/bundle.css", "css");
|
||||||
|
// static_file_server("dist/bundle.js", "js");
|
||||||
|
// if (setting.mode === "development") {
|
||||||
|
// static_file_server("dist/bundle.js.map", "text");
|
||||||
|
// static_file_server("dist/bundle.css.map", "text");
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
start_server() {
|
start_server() {
|
||||||
const setting = get_setting();
|
const setting = get_setting();
|
||||||
|
Loading…
Reference in New Issue
Block a user