😽
Next.jsで「TypeError: fetch failed」が出た。
Next.jsで「TypeError: fetch failed」が出た。
エラーの内容は以下のとおりです。
TypeError: fetch failed
at Object.fetch (/var/task/node_modules/next/dist/compiled/undici/index.js:1:26684)
at processTicksAndRejections (node:internal/process/task_queues:96:5)
いくつかの解決方法が TypeError: fetch failed in server componant since next 13.0.6 #44062 に記載されていました。
私の場合はnext.config.jsの先頭に以下を記述することで解決しました。
const dns = require("dns");
dns.setDefaultResultOrder("ipv4first")
原因は、Node 17/18がlocalhostのデフォルトとしてIPv6を使用しているためとのことです。
参考ページ
つまりNodeのバージョンを変更することでも解決できそうです。
Discussion