`revalidatePath()` och `revalidateTag()` kan bara anropas inom en aktiv request, inte på modulnivå.
Förklaring
Next.js cache-revalidering är kopplad till en specifik request-kontext. Anropar du revalidatePath() direkt i en fils toppnivå, utanför en funktion, körs det när modulen laddas av Node.js och inte när en användare gör en förfrågan. Det finns ingen request-kontext att arbeta med.
Det här misstaget är vanligast i initialiseringsscript och utility-filer.
Vanliga orsaker
revalidatePath() eller revalidateTag() anropat på modulnivå. Revalidering placerad i ett script som importeras vid uppstart.
Lösning
Flytta anropet inuti en funktion som körs som svar på en request:
// Fel — körs vid modulimport
revalidatePath('/blog');
// Rätt — körs vid POST-request
export async function POST() {
await db.updatePost();
revalidatePath('/blog');
return Response.json({ ok: true });
}Detsamma gäller Server Actions: revalidering ska alltid ske inuti en async-funktion som triggas av en användarinteraktion.