update
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -13,3 +13,6 @@ node_modules
|
|||||||
bun.lock
|
bun.lock
|
||||||
yarn.lock
|
yarn.lock
|
||||||
|
|
||||||
|
|
||||||
|
.vercel
|
||||||
|
.env*.local
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
/* @import url("https://cdn.jsdelivr.net/npm/@chinese-fonts/maple-mono-cn@2.0.0/dist/MapleMono-CN-Regular/result.css"); */
|
/* @import url("https://cdn.jsdelivr.net/npm/@chinese-fonts/maple-mono-cn@2.0.0/dist/MapleMono-CN-Regular/result.css"); */
|
||||||
@import url("https://fontsapi.zeoseven.com/521/main/result.css");
|
|
||||||
/* @import url("https://fontsapi.zeoseven.com/292/main/result.css"); */
|
/* @import url("https://fontsapi.zeoseven.com/292/main/result.css"); */
|
||||||
@import "tailwindcss";
|
@import "tailwindcss";
|
||||||
@import "@nuxt/ui";
|
@import "@nuxt/ui";
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ export default defineNuxtConfig({
|
|||||||
{ rel: "alternate", hreflang: siteConfig.siteMeta.lang, href: siteConfig.siteMeta.url },
|
{ rel: "alternate", hreflang: siteConfig.siteMeta.lang, href: siteConfig.siteMeta.url },
|
||||||
{ rel: "dns-prefetch", href: siteConfig.siteMeta.url },
|
{ rel: "dns-prefetch", href: siteConfig.siteMeta.url },
|
||||||
{ rel: "preconnect", href: siteConfig.siteMeta.url },
|
{ rel: "preconnect", href: siteConfig.siteMeta.url },
|
||||||
|
{ rel: "stylesheet", href: "/fonts/521/main/result.css" },
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
pageTransition: { name: "page", mode: "out-in" },
|
pageTransition: { name: "page", mode: "out-in" },
|
||||||
|
|||||||
26
server/routes/fonts/[...all].get.ts
Normal file
26
server/routes/fonts/[...all].get.ts
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
import { defineEventHandler } from "h3";
|
||||||
|
|
||||||
|
export default defineEventHandler(async (event) => {
|
||||||
|
const { req, res } = event.node;
|
||||||
|
// Preserve the path after /fonts
|
||||||
|
const forwardPath = req.url?.replace(/^\/fonts/, "") || "";
|
||||||
|
const target = `https://fontsapi.zeoseven.com${forwardPath}`;
|
||||||
|
|
||||||
|
const upstream = await fetch(target);
|
||||||
|
if (!upstream.ok) {
|
||||||
|
res.statusCode = upstream.status;
|
||||||
|
const text = await upstream.text();
|
||||||
|
res.setHeader("Content-Type", "text/plain; charset=utf-8");
|
||||||
|
res.end(text);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const contentType = upstream.headers.get("content-type") || "application/octet-stream";
|
||||||
|
const arrayBuffer = await upstream.arrayBuffer();
|
||||||
|
const buffer = Buffer.from(arrayBuffer);
|
||||||
|
|
||||||
|
// Long cache: 1 year + immutable
|
||||||
|
res.setHeader("Cache-Control", "public, max-age=31536000, immutable");
|
||||||
|
res.setHeader("Content-Type", contentType);
|
||||||
|
res.end(buffer);
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user