From fb3f43f7366ff172c91490f18aeb80cd8a6d809c Mon Sep 17 00:00:00 2001 From: Marco Pedone Date: Mon, 4 Aug 2025 19:00:53 +0200 Subject: [PATCH] Add SKIP_REDIS check in getTilesClient and handle KeyDB client initialization --- apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts b/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts index 96f64cc..a5fd5f0 100644 --- a/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts +++ b/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts @@ -2,12 +2,14 @@ import type { NextApiRequest, NextApiResponse } from "next"; import Redis from "ioredis"; import { env } from "~/env.mjs"; - let tiles: Redis | null = null; export function getTilesClient() { + if (env.SKIP_REDIS) { + return null; + } if (!tiles) { - tiles = new Redis(`keydb://${env.TILES_URL}` ); + tiles = new Redis(`keydb://${env.TILES_URL}`); } return tiles; } @@ -24,7 +26,6 @@ export default async function handler( ) { const { slug } = req.query; - if (!slug) { return res.status(400).json({ error: "Slug is required", @@ -48,6 +49,11 @@ export default async function handler( const cacheKey = `tile:${z}:${x}:${y}`; const tiles = getTilesClient(); + if (!tiles) { + return res.status(500).json({ + error: "KeyDB client is not initialized", + }); + } const cachedTile = await tiles.getBuffer(cacheKey); if (cachedTile) {