情景:
我试图在JS中提出一种实现版本控制的方法,它实现了两个前提:
因此我想出了这个方案:
每次新版本可用时我都需要FE重新加载内容,所以实现这一目的的一个简单方法是向src链接添加一个版本标记:
<script type="text/javascript" src="myfile.js?15.6.0"></script>
我可以添加一些模板,因此可以在别处定义版本号,例如:
<script type="text/javascript" src="myfile.js?$$RELEASE_ID$$"></script>
问题:
我需要调用后端,知道最新版本(后端将从pom.xml
文件中读取,然后返回)
问题:
我有什么方法可以使用,所以前端知道什么是最新版本?
感谢。
答案 0 :(得分:2)
我使用buildnumber-maven-plugin来生成版本标记,例如git哈希。并将其嵌入战争文件中的某个位置。任
请参阅https://github.com/renfeng/event-manager/blob/master/pom.xml#L130-L155
答案 1 :(得分:1)
无法消除与后端的通信,以获取有关服务器上文件状态的信息。但是,如果您希望尽可能少地提出请求,则可以设置FE轮询服务器的时间间隔。
如果您通常每天都会发布BE版本,那么每隔12,6,4或您想要的任何小时数就会对服务器进行任何更改。这一切都取决于更新文件的重要性。
话虽如此,在大多数情况下,在后端更新文件版本时,一旦页面刷新(可能在几小时后发生),服务器将发送新文件版本,除非另外配置服务器缓存策略。