Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menghalang Data Titik Akhir API Daripada Dicache dalam Next.js?
Cara Menghalang Data Titik Akhir API Daripada Dicache dalam Next.js
Next.js v13.2 menggunakan direktori aplikasi baharu dengan Route Pengendali. Dalam pengeluaran, rangka kerja secara automatik cache data yang diambil daripada titik akhir API dan Komponen Pelayan. Ini boleh membawa kepada ketidakkonsistenan jika data hujung belakang dikemas kini.
Penyelesaian 1: Mengubah suai Pilihan Ambil
Untuk melumpuhkan caching untuk pertanyaan pengambilan tertentu, tambahkan pengesahan semula atau pilihan cache ke fungsi fetch():
<code class="js">fetch('https://...', { next: { revalidate: 10 } }); // revalidate every 10 seconds fetch('https://...', { cache: 'no-store' }); // no caching</code>
Penyelesaian 2: Menggunakan Konfigurasi Segmen Laluan
Untuk digunakan dengan perpustakaan lain (cth., axios, ORM) atau untuk tetapan cache segmen setiap laluan, pertimbangkan untuk menggunakan Konfigurasi Segmen Laluan:
<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>
Atas ialah kandungan terperinci Bagaimana untuk Menghalang Data Titik Akhir API Daripada Dicache dalam Next.js?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!