diff options
| author | Ritesh Ghosh <[email protected]> | 2024-12-23 18:15:01 +0530 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-12-23 18:15:01 +0530 |
| commit | 2e93990d443e7560d5e145406133c5b9899e75e6 (patch) | |
| tree | 7d79ddcf7abf4ad1eea638b9d9544316ca64e6a3 /src/config/cacheControlMiddleware.ts | |
| parent | 2d5377cbc58bd84dcd0585798e77995265c8727b (diff) | |
| parent | dfc278be08b64dc9bb3082059648c5f792a79fcb (diff) | |
| download | aniwatch-api-2e93990d443e7560d5e145406133c5b9899e75e6.tar.xz aniwatch-api-2e93990d443e7560d5e145406133c5b9899e75e6.zip | |
Merge pull request #90 from abdelaziz-mahdy/add-cache-headers
feat(cache): add Cache-Control middleware and update .env.example
Diffstat (limited to 'src/config/cacheControlMiddleware.ts')
| -rw-r--r-- | src/config/cacheControlMiddleware.ts | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/config/cacheControlMiddleware.ts b/src/config/cacheControlMiddleware.ts new file mode 100644 index 0000000..47035ed --- /dev/null +++ b/src/config/cacheControlMiddleware.ts @@ -0,0 +1,15 @@ +import type { MiddlewareHandler } from "hono"; + +// Define middleware to add Cache-Control header +const cacheControlMiddleware: MiddlewareHandler = async (c, next) => { + const sMaxAge = process.env.ANIWATCH_API_S_MAXAGE || "60"; + const staleWhileRevalidate = process.env.ANIWATCH_API_STALE_WHILE_REVALIDATE || "30"; + c.header( + "Cache-Control", + `s-maxage=${sMaxAge}, stale-while-revalidate=${staleWhileRevalidate}` + ); + + await next(); +}; + +export default cacheControlMiddleware; |
