https://nextjs.org/docs/app/building-your-application/caching#revalidating-1
一定時間が経過し、新しいリクエストが行われた後にデータを再検証する。 これは、変更頻度が低く、鮮度がそれほど重要でないデータに有効である。
時間間隔でデータを再検証するには、fetchのnext.revalidateオプションを使用して、リソースのキャッシュ寿命(秒)を設定します。
イベント(フォーム送信など)に基づいてデータを再検証します。 オンデマンド再検証では、タグベースまたはパスベースのアプローチを使用して、データのグループを一度に再検証できます。 これは、最新のデータをできるだけ早く表示したい場合に便利です(ヘッドレスCMSのコンテンツが更新された場合など)。
// 時間ベースの再検証 ( Time-based )
fetch(url, { next: { revalidate: 3600 } }) // 1時間
// CMS更新時 ( On-demand )
async function handleCMSWebhook() {
await fetch('/api/revalidate?tag=article')
}