From b286a991cf595277968a190d7a8cd29f3695f1bc Mon Sep 17 00:00:00 2001 From: charlzyx Date: Tue, 20 Feb 2024 10:27:40 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20fix=20cors=20config?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bun.lockb | Bin 265738 -> 265396 bytes package.json | 3 +-- src/config.ts | 12 +++++++++--- src/utils/npm.ts | 2 -- src/utils/stream.ts | 15 --------------- 5 files changed, 10 insertions(+), 22 deletions(-) diff --git a/bun.lockb b/bun.lockb index 7bd773fa7d50d58dd4335c15dab2bbf471092d0c..756b845a5aeb21fd9dd80a0ed891b0aef513539d 100755 GIT binary patch delta 55443 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 Xm^LvWej0QXmW^gbD5a`arZ4^vA3R{+ delta 56245 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 F{{y=WNA&;z diff --git a/package.json b/package.json index 8430dfb..5c9e741 100644 --- a/package.json +++ b/package.json @@ -11,8 +11,7 @@ "@elysiajs/cors": "^0.8.0", "@elysiajs/html": "^0.8.0", "@elysiajs/jwt": "^0.8.0", - "@elysiajs/static": "^0.8.1", - "elysia": "latest", + "elysia": "^0.8.17", "gunzip-maybe": "^1.4.2", "lru-cache": "^10.2.0", "mime": "^3.0.0", diff --git a/src/config.ts b/src/config.ts index 838a1d2..da6917f 100644 --- a/src/config.ts +++ b/src/config.ts @@ -2,6 +2,14 @@ import path from "path"; import os from "os"; import type { cors } from "@elysiajs/cors"; +const getCROSOrigin = () => { + const maybe = /^\//.test(Bun.env.CORS_ORIGIN ?? "") + ? new RegExp(Bun.env.CORS_ORIGIN!) + : Bun.env.CORS_ORIGIN ?? "*"; + // * will be ignore, use true to fix it. + return maybe === "*" ? true : maybe; +}; + export const BunPkgConfig = { get PORT() { return process.env.PORT ?? "4567"; @@ -13,9 +21,7 @@ export const BunPkgConfig = { return process.env.ORIGIN || `http://localhost${process.env.PORT}`; }, cors: { - origin: /^\//.test(Bun.env.CORS_ORIGIN ?? "") - ? new RegExp(Bun.env.CORS_ORIGIN!) - : Bun.env.CORS_ORIGIN ?? "*", + origin: getCROSOrigin(), } as Parameters[0], get cacheDir() { return Bun.env.CACHE_DIR || path.resolve(os.tmpdir(), "bunpkg_cache"); diff --git a/src/utils/npm.ts b/src/utils/npm.ts index ad753ef..0b8eceb 100644 --- a/src/utils/npm.ts +++ b/src/utils/npm.ts @@ -1,5 +1,4 @@ import semver from "semver"; -import { URL } from "whatwg-url"; import { BunPkgConfig } from "../config"; import { TTL, @@ -13,7 +12,6 @@ import { findEntryInEntries, findMatchEntries, findMatchEntry, - promiseifyStream, search, } from "./stream"; diff --git a/src/utils/stream.ts b/src/utils/stream.ts index aaddf9c..86f0d3a 100644 --- a/src/utils/stream.ts +++ b/src/utils/stream.ts @@ -16,21 +16,6 @@ export const promiseifyStream = (stream: Transform | IncomingMessage) => { }); }; -export const setMetaHeaders = (resp: Response, meta: IFileMeta) => { - const tags = ["file"]; - - const ext = nodepath.extname(meta.path!).substr(1); - if (ext) { - tags.push(`${ext}-file`); - } - resp.headers.set("Cross-Origin-Resource-Policy", "cross-origin"); - resp.headers.set("Content-Type", getContentType(meta.contentType!)); - resp.headers.set("Content-Length", meta.size?.toString()!); - resp.headers.set("Cache-Control", "public, max-age=31536000"); - resp.headers.set("Last-Modified", meta.lastModified!); - resp.headers.set("ETag", tags.join(", ")); -}; - /** * Search the given tarball for entries that match the given name. * Follows node's resolution algorithm.