Предварительная выборка Nextjs <Link> возвращает 404
Я создал приложение Nextjs, которое использует динамическую маршрутизацию, и замечаю странное поведение с предварительной выборкой.
Иногда (обычно после перестройки, но не всегда) мое приложение начинает возвращать 404 для всех предварительных выборок на данной странице. Если я перейду по ссылке, загружается следующая страница, но снова все предварительные выборки на этой странице начинаются с 404. Эта проблема исчезнет после обновления страницы несколько раз, но это не всегда согласованно.
Кажется, что перерывы происходят исключительно на моих динамических маршрутах с использованием getStaticProps и повторной проверки содержимого каждую секунду. Ниже приведен пример того, как я структурировал свою ссылку, а не имя поездки будет динамическим значением.
<Link href={`/trip/${tripname)}`}>
<a>
<Card className={classes.tripCardRoot} />
</a>
</Link>
1 ответ
У меня была точно такая же проблема ... Через 2 дня проб / ошибок я наконец нашел решение. Но это не лучшее решение IMO.
Я обновил все свои
<Link />
компоненты из
next/link
и отключил
prefetch
вариант. После этого изменения я больше не вижу ошибок 404 на вкладке сети dev-tools. Все GET-запросы для предварительно сгенерированных данных JSON теперь будут выполняться только при наведении курсора, и волшебным образом они не приводят к 404...
Я знаю, что это не лучшее решение, но, по крайней мере, проблема исчезла ... Надеюсь, кто-нибудь ответит лучшим решением!