revalidateTag
revalidateTag
ermöglicht es Ihnen, zwischengespeicherte Daten bei Bedarf für einen bestimmten Cache-Tag zu löschen.
Wissenswert:
revalidateTag
ist in beiden Node.js- und Edge-Runtimes verfügbar.revalidateTag
invalidiert den Cache erst beim nächsten Aufruf des Pfads. Das bedeutet, dass der Aufruf vonrevalidateTag
mit einem dynamischen Routensegment nicht sofort viele Revalidierungen auslöst. Die Invalidierung erfolgt erst beim nächsten Aufruf des Pfads.
Parameter
revalidateTag(tag: string): void;
tag
: Eine Zeichenkette, die den Cache-Tag repräsentiert, der mit den zu revalidierenden Daten verknüpft ist. Muss 256 Zeichen oder weniger betragen.
Sie können Tags wie folgt zu fetch
hinzufügen:
fetch(url, { next: { tags: [...] } });
Rückgabewert
revalidateTag
gibt keinen Wert zurück.
Beispiele
Server Action
'use server'
import { revalidateTag } from 'next/cache'
export default async function submit() {
await addPost()
revalidateTag('posts')
}
Route Handler
import { NextRequest } from 'next/server'
import { revalidateTag } from 'next/cache'
export async function GET(request: NextRequest) {
const tag = request.nextUrl.searchParams.get('tag')
revalidateTag(tag)
return Response.json({ revalidated: true, now: Date.now() })
}
import { revalidateTag } from 'next/cache'
export async function GET(request) {
const tag = request.nextUrl.searchParams.get('tag')
revalidateTag(tag)
return Response.json({ revalidated: true, now: Date.now() })
}