From dd8fdcd37dc0412abffe312525d65fd011687548 Mon Sep 17 00:00:00 2001 From: Markus Wendorf Date: Tue, 9 Jul 2024 10:11:33 +0200 Subject: [PATCH] cache-control (#423) Change CACHE_MAX_AGE to CACHE_CONTROL in AWS and Cloudflare --- serverless/aws/.gitignore | 1 + serverless/aws/src/index.ts | 6 +++--- serverless/cloudflare/src/index.ts | 5 +++-- serverless/cloudflare/wrangler.toml.example | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/serverless/aws/.gitignore b/serverless/aws/.gitignore index 1521c8b..db4c6d9 100644 --- a/serverless/aws/.gitignore +++ b/serverless/aws/.gitignore @@ -1 +1,2 @@ dist +node_modules \ No newline at end of file diff --git a/serverless/aws/src/index.ts b/serverless/aws/src/index.ts index 1f99c7f..3194d23 100644 --- a/serverless/aws/src/index.ts +++ b/serverless/aws/src/index.ts @@ -232,9 +232,9 @@ export const handlerRaw = async ( data = tilePostprocess(data, header.tileType); } - headers["Cache-Control"] = `public, max-age=${ - process.env.CACHE_MAX_AGE || 86400 - }`; + headers["Cache-Control"] = + process.env.CACHE_CONTROL || "public, max-age=86400"; + headers.ETag = `"${createHash("sha256") .update(Buffer.from(data)) .digest("hex")}"`; diff --git a/serverless/cloudflare/src/index.ts b/serverless/cloudflare/src/index.ts index 925d354..c9f15b3 100644 --- a/serverless/cloudflare/src/index.ts +++ b/serverless/cloudflare/src/index.ts @@ -15,7 +15,7 @@ interface Env { // biome-ignore lint: config name BUCKET: R2Bucket; // biome-ignore lint: config name - CACHE_MAX_AGE?: number; + CACHE_CONTROL?: string; // biome-ignore lint: config name PMTILES_PATH?: string; // biome-ignore lint: config name @@ -134,8 +134,9 @@ export default { ) => { cacheableHeaders.set( "Cache-Control", - `max-age=${env.CACHE_MAX_AGE || 86400}` + env.CACHE_CONTROL || "public, max-age=86400" ); + const cacheable = new Response(body, { headers: cacheableHeaders, status: status, diff --git a/serverless/cloudflare/wrangler.toml.example b/serverless/cloudflare/wrangler.toml.example index b604401..7ebb25b 100644 --- a/serverless/cloudflare/wrangler.toml.example +++ b/serverless/cloudflare/wrangler.toml.example @@ -9,4 +9,4 @@ r2_buckets = [ [vars] # ALLOWED_ORIGINS = "http://localhost:8000" -# CACHE_MAX_AGE = 86400 \ No newline at end of file +# CACHE_CONTROL = "public, max-age=86400" \ No newline at end of file