发布更改后强制重新加载Blazor客户端

问题描述 投票:4回答:1

我有一个Blazor应用程序,正在将其部署到Azure进行一些alpha测试。我已经做到了,我可以从网站上运行该应用程序。

当我对客户端和服务器项目进行更改并重新发布时,就会出现问题。无论运行哪种浏览器,客户端都将运行浏览器缓存中已存在的任何内容,直到清除浏览器历史记录。这意味着在清除历史记录之前,该应用程序似乎已损坏,因为旧版本上的客户端请求与新的服务器API不匹配-更不用说我的客户端更改没有得到测试。

发布更改后,如何强制重新加载客户端?我是否必须告诉浏览器不要缓存我的应用程序(不确定如何在blazor上运行),并在性能稳定之前使性能受到影响?还是有一种方法可以在使用某些中间件之类的第一个API调用后强制客户端重新加载?

或者我缺少什么?

编辑:可能与我使用了Blazor WebAssembly 3.2.0 Preview 2中提供的PWA模板有关。我仍在通过浏览器运行该应用程序,但是启用PWA选项似乎有可能改变了该应用程序的行为即使将其作为常规网站运行。

azure-web-sites blazor
1个回答
0
投票

由于您的应用程序是PWA,因此您可以在navigator.serviceWorker对象中声明要注册的js文件。此my.js文件可以包含const CACHE_VERSION = 1.0。更新此值应强制客户端下载最新文件。有关更多信息,请参见Jeremy Likness'blog post

© www.soinside.com 2019 - 2024. All rights reserved.