Heim >Web-Frontend >js-Tutorial >Wie kann verhindert werden, dass API-Endpunktdaten in Next.js zwischengespeichert werden?
So verhindern Sie, dass API-Endpunktdaten in Next.js zwischengespeichert werden
Next.js v13.2 verwendet ein neues App-Verzeichnis mit Route Handler. In der Produktion speichert das Framework automatisch Daten zwischen, die von API-Endpunkten und Serverkomponenten abgerufen werden. Dies kann zu Inkonsistenzen führen, wenn die Backend-Daten aktualisiert werden.
Lösung 1: Abrufoptionen ändern
Um das Caching für bestimmte Abrufabfragen zu deaktivieren, hängen Sie Optionen zur erneuten Validierung oder zum Cache an die fetch()-Funktion:
<code class="js">fetch('https://...', { next: { revalidate: 10 } }); // revalidate every 10 seconds fetch('https://...', { cache: 'no-store' }); // no caching</code>
Lösung 2: Routensegmentkonfiguration verwenden
Zur Verwendung mit anderen Bibliotheken (z. B. Axios, ORM) oder für Per- Um die Einstellungen für den Routensegment-Cache zu ändern, sollten Sie die Verwendung der Routensegmentkonfiguration in Betracht ziehen:
<code class="js">// layout.js, page.js, or route.js import prisma from './lib/prisma'; /* Force dynamic behavior, there are more options available depending on your requirement. */ export const dynamic = "force-dynamic"; async function getPosts() { const posts = await prisma.post.findMany(); return posts; } export default async function Page() { const posts = await getPosts(); // ... }</code>
Das obige ist der detaillierte Inhalt vonWie kann verhindert werden, dass API-Endpunktdaten in Next.js zwischengespeichert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!