diff options
-rw-r--r-- | src/index.ts | 34 |
1 files changed, 9 insertions, 25 deletions
diff --git a/src/index.ts b/src/index.ts index f4279c8..57c612a 100644 --- a/src/index.ts +++ b/src/index.ts @@ -108,31 +108,15 @@ async function serveFile( statusCode: number = 200, extraHeaders: Record<string, string> = {}, ): Promise<Response> { - if (file && (await file.handle.exists())) { - metrics.requestsByStatus.inc({ status_code: statusCode }); - return new Response(file.handle, { - headers: { - "last-modified": file.mtime.toUTCString(), - ...extraHeaders, - ...(file.headers || defaultHeaders), - }, - status: statusCode, - }); - } else { - metrics.requestsByStatus.inc({ status_code: 404 }); - // TODO return encoded - return serveFile(files.get("/404.html"), 404); - } -} - -async function serveEncodedFile( - file: File | undefined, - statusCode: number = 200, - extraHeaders: Record<string, string> = {}, -): Promise<Response> { - const res = await serveFile(file, statusCode, extraHeaders); - res.headers.delete("content-disposition"); - return res; + metrics.requestsByStatus.inc({ status_code: statusCode }); + return new Response(await file.handle.arrayBuffer(), { + headers: { + "last-modified": file.mtime.toUTCString(), + ...extraHeaders, + ...(file.headers || defaultHeaders), + }, + status: statusCode, + }); } function parseIfModifiedSinceHeader(header: string | null): number { |