tips chips

日々の作業で出てきた技術メモの切れ端を置いておくページ

[Next.js] invalid Cache-Control duration provided と言われる

Next.js13(app directory)でハマるとまだまだ情報が少ないので辛いときあり。。

Next.js 13のapp dirを試していたらISR(Incremental Static Regeneration)をしているページを読もうとしてでこう言われてしまった。

なんぞ…と思ったが、fetchのところで

fetch(url, {cache: 'no-store', next: {revalidate: 10}})

というような指定がされていた。

正しくは

fetch(url, {next: {revalidate: 10}})

こう。

多分試行錯誤してる時に入れてしまったcacheオプションを消し忘れていた。

内部の処理を追いきれているわけではないが、エラーメッセージを見る限りだとおそらくno-storeを指定してあると内部的にはrevalidate: 0として処理しているのではないだろうか