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

.NET 8托管Blazor WASM PWA中blazor.boot.json完整性校验失败

.NET 8 Blazor WASM PWA版本更新通知不稳定且blazor.boot.json完整性校验失败

我正在开发一个.NET 8 Blazor WASM PWA项目,已重构原名为“hosted”的旧模板,并配置了版本更新通知功能,但该功能表现极不稳定:

  • 部署更新后,有时能立即触发更新通知,有时需等待数分钟至数小时,甚至完全无通知
  • 未触发通知时,控制台会抛出完整性校验错误:
Failed to find a valid digest in the 'integrity' attribute for resource 'https://<my domain.com>/_framework/blazor.boot.json' with computed SHA-256 integrity 'i7j4OTqlUgpP/raiyVyl7zPhawvQWu4qtBIcCivBopA='. The resource has been blocked.

与常见情况不同,本次校验失败的是blazor.boot.json本身(通常是该文件存储的其他文件哈希不匹配导致问题)。此外,尽管.NET 8已将编译文件从.dll改为.wasm以规避此类缓存问题,异常仍会出现。

目前已做如下排查:

  • 问题看似与缓存相关,但浏览器控制台显示该文件带有禁止缓存的响应头,且并未从浏览器缓存加载
  • 不清楚blazor.boot.json的哈希是与哪个值对比导致的不匹配
  • 部署环境为Hetzner VPS上的Caprover,使用与Visual Studio生成的近乎一致的Dockerfile部署;采用Cloudflare做DNS,缓存设置为“尊重现有头”,甚至尝试过禁用缓存的开发模式,且未开启Cloudflare代理
  • 本地调试无任何问题,仅生产环境出现该异常
  • 清除浏览器缓存后重新加载可正常获取最新文件,但无法要求用户手动执行此操作
  • 尝试过删除bin和obj文件夹,但Caprover部署时会重新生成这些文件,该操作无效
  • 因需部署更新才能复现问题,无法提供最小可复现示例

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 14:30:07