Tob*_*sen 1 c# progressive-web-apps blazor
我正在尝试找出是否可以使用 Blazor 服务器制作 PWA。
在我看来,有些人“解决”这个问题的方式是将manifest.json从WebAssembly应用程序复制粘贴到服务器应用程序。
这让我想知道,为什么微软不在 dotnet run blazorserver 上提供 --pwa 标志,而只在 Web 程序集上提供 --pwa 标志(如果就这么简单的话)。
谢谢!
基本上是的:这是可能的。但这样做的唯一好处是能够在设备上安装应用程序。正如 Mayur Ekbote 所说,blazor 服务器在服务器上运行,因此无法访问 PWA 提供的所有其他功能。这也解释了为什么微软没有提供 --pwa 标志,它本质上是没有用的。尽管我认为仅安装功能就值得将其设为 PWA。
如果你想让你的 blazor 服务器成为 PWA,你需要同时拥有一个 manifest.json 和一个注册的 Service Worker。否则浏览器不会将其视为 PWA。有关更广泛的安装要求,请检查此。
正如您已经描述的,最简单的方法是从 WebAssembly 项目中复制 Service Worker 和清单并将其添加到服务器项目中。