You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next-PWA离线模式下无限刷新问题求助

Next-PWA + Next-translate + 多租户中间件的离线无限刷新问题

背景与技术栈

  • 技术版本:next-pwa@5.6.0、next@12.2.0、next-translate@1.4.0
  • 业务场景:通过Next.js中间件实现多租户功能,将用户请求重写至对应组织页面,简化后的中间件代码如下:
export async function middleware(req: NextRequest) {
    const url = req.nextUrl.clone();
    url.pathname = `/organizations/${viewport}/${req.headers.get('host')}${url.pathname}`;
    return NextResponse.rewrite(url);
}
  • 核心需求:缓存viewport、组织(host)及路径相关页面资源
  • Next-translate默认行为:当请求未指定语言时,自动将请求重定向至/default语言路径

离线模式异常表现

  • 已完成根页面的缓存,但离线状态下,页面仍持续请求/default页面,最终引发无限刷新循环
  • 已尝试的无效方案:
    • 在PWA配置中设置dynamicStartUrlRedirect: '/default'
    • 通过additionalManifestEntries配置确保/default页面被缓存,但缓存的/default页面并未被实际调用
  • 在线与离线模式下的请求详情、缓存页面截图已留存记录

内容的提问来源于stack exchange,提问作者Navid Nourani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 10:29:53