正解 fetchにtagsを付け、更新時にrevalidateTagを呼び出すNext.jsではfetchにnext: { tags: [...] }を付けて、関連するキャッシュをタグ単位で管理できます。管理画面の更新処理やServer ActionからrevalidateTagを呼ぶことで、対象タグに紐づくデータだけを再検証できます。補足: 商品単位で細かく無効化したいならproduct-123のような粒度のタグを検討します。広すぎるタグは不要な再生成を増やします。A. fetchにcache: "no-store"を指定し、常にキャッシュしない: 最新性は保てますが、キャッシュ活用という要件から外れます。B. fetchにtagsを付け、更新時にrevalidateTagを呼び出す: これが正解です。C. generateMetadata内で商品更新APIを呼び出して再取得する: Metadata生成は更新処理を行う場所ではありません。D. middleware.tsで商品IDを判定し、レスポンスを書き換える: Middlewareでページキャッシュを細かく再検証する設計ではありません。
教科書へ直接移動
読みたい分野を選べます