Add route for invalidating discover cache

This commit is contained in:
Jared Schoeny 2026-01-27 19:18:39 -10:00
parent 899724c839
commit 82886ec2bb
2 changed files with 20 additions and 1 deletions

View File

@ -0,0 +1,19 @@
import { NextRequest, NextResponse } from "next/server";
import { revalidateTag } from "next/cache";
import { checkUserRoles } from "@/utils/user";
import { createClient } from "@/utils/supabase/server";
export async function GET(req: NextRequest) {
const supa = await createClient();
const { data: user } = await supa.auth.getUser();
if (!user) {
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
}
const { isAdmin } = await checkUserRoles(supa);
if (!isAdmin) {
return NextResponse.json({ error: "Forbidden" }, { status: 403 });
}
revalidateTag("discover");
return NextResponse.redirect(new URL("/discover", req.url));
}

View File

@ -328,7 +328,7 @@ export async function getDiscoverData(sort: DiscoverSortOption): Promise<Discove
} satisfies DiscoverDataResult;
},
[`discover-data:${sort}:${dayStamp}`], // Cache key
{ revalidate: TIME_TO_LIVE } // Cache duration
{ revalidate: TIME_TO_LIVE, tags: ["discover"] } // Cache duration
);
return runner();