【问题标题】:Blazor server pwaBlazor 服务器 pwa
【发布时间】:2021-09-21 12:59:50
【问题描述】:

我正在尝试了解是否可以使用 Blazor 服务器制作 PWA。

在我看来,有些人“解决”它的方式是将 manifest.json 从 webassembly 应用程序复制粘贴到服务器应用程序。

这让我想知道,为什么微软没有在 dotnet run blazorserver 上提供 --pwa 标志,而只在 Web 程序集上提供,如果它这么简单的话。

谢谢!

【问题讨论】:

  • Blazor 服务器按体系结构由服务器端控制。浏览器中的每个事件都被发送到服务器,服务器修改状态并发送更新后的 DOM 差异,这些差异将应用于客户端。根据设计,PWA 应该离线使用。它们的目标和设计根本不兼容。

标签: c# blazor progressive-web-apps


【解决方案1】:

基本上是的:这是可能的。但是这样做的唯一好处是能够在设备上安装应用程序。正如 Mayur Ekbote 所说,blazor 服务器在服务器上运行,因此无法访问 PWA 提供的所有其他功能。这也解释了为什么微软没有提供 --pwa 标志,它本质上是无用的。虽然我认为单独的安装功能可能值得将其作为 PWA。

如果你想让你的 blazor 服务器成为 PWA,你需要同时拥有 manifest.json 和注册的 service worker。否则浏览器不会将其作为 PWA 来获取。如需更广泛的安装要求,请查看this

正如您已经描述的,最简单的方法是从 webassembly 项目中复制 service worker 和 manifest 并将其添加到服务器项目中。

【讨论】:

    猜你喜欢
    • 2023-02-15
    • 2021-05-28
    • 2020-12-02
    • 2021-02-24
    • 2020-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-25
    相关资源
    最近更新 更多