배포 후 Next.js API 끝점이 업데이트되지 않음
문제: API 끝점을 통해 데이터베이스에서 데이터를 가져옴 은(는) 프로젝트 배포 후에도 정적 상태로 유지됩니다.
분석: 이 문제는 캐싱에서 비롯되었을 가능성이 높습니다. Next.js에서 API 경로와 서버 구성 요소에는 성능 최적화를 위해 기본적으로 캐싱이 활성화되어 있습니다. 이 캐싱은 데이터 업데이트를 방해할 수 있습니다.
해결책:
캐싱을 방지하고 동적 데이터 업데이트를 보장하려면 다음과 같이 캐싱 동작을 조정하세요.
fetch() 사용:
재검증 간격을 초 단위로 지정하려면 fetch() 요청에 재검증 옵션을 추가하세요.
fetch('https://...', { next: { revalidate: 10 } });
또는 캐시 옵션을 no-store로 설정하여 캐싱을 비활성화합니다.
fetch('https://...', { cache: 'no-store' });
경로 세그먼트 구성 사용:
layout.js, page.js 또는 Route.js 파일에서 다음 코드를 추가하여 특정 경로 세그먼트에 대한 캐싱을 비활성화합니다.
import prisma from './lib/prisma'; 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(); // ... }
이러한 단계에 따라 API 엔드포인트에 대한 캐싱을 비활성화하고 배포 후 데이터 업데이트가 즉시 반영되도록 할 수 있습니다.
위 내용은 배포 후 Next.js API 엔드포인트가 업데이트되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!