首页 > 解决方案 > 哪种缓存方法适合新版本的网站?

问题描述

我有一个 C#/Angular 站点,每隔几周就会更新一次版本。但是,有些用户没有获得新版本,这会导致网站出现问题。我似乎找不到明确的答案。我应该怎么做才能解决这个问题?

据我了解,我的选择是:

  1. 将版本参数附加到由 Visual Studio 构建生成的所有 .JS 文件的末尾,这将强制重新下载文件

  2. 将 Angular 登录令牌设置为 24 小时后失效,然后调用方法清除 c# 端的缓存,[ResponseCache(NoStore=true,Duration=1)]并在更新令牌时调用方法将其设置回来。

更多信息

据我所知,Angular 中启用了缓存。我正在构建一个发布配置,它位于 package.json 中:

"start": "ng serve",
"build": "ng build",
"build:ssr": "npm run build -- --app=ssr --output-hashing=media",

标签: c#angularcachingbrowser-cache

解决方案


使用 serviceworker 缓存数据并通知用户新的更新。

在您的 Angular 项目中运行 ng add @angular/PWA,这会将 Angular Service Worker 添加到您的项目中。


推荐阅读