gpt4 book ai didi

javascript - 单页应用程序发布/更新后如何回发到服务器

转载 作者:行者123 更新时间:2023-12-02 22:10:09 25 4
gpt4 key购买 nike

我有一个 SPA Angular 网站。每当我们发布对网站的更改时,用户的浏览器都不会返回服务器来获取新的 JavaScript 文件。该应用程序愉快地在用户的浏览器中继续运行,虽然它会进行 ajax 调用来获取数据,但 javascript 文件不会更改。如果被调用的后端 API 的签名发生更改等,这可能会导致错误。如果用户刷新页面,他们将获得更新的 javascript 文件,之后一切正常。

有没有办法告诉浏览器该网站已更新并获取新的 javascript 文件,而不是仅仅使用相同的文件运行应用程序?

我使用 Angular CLI 来构建应用程序,因此当网站发布时,javascript 文件末尾有哈希值等。这不是文件被缓存且未更新的问题...这是一个问题浏览器知道它需要请求文件或刷新页面。

最佳答案

您可以使用web workers轮询服务器是否有更改,并在发现更改时刷新浏览器。

网络 worker 的替代方案是使用 setInteterval只需在给定时间后刷新即可。

另一种选择是在 API 响应中包含版本号,当版本号不同步时,JavaScript 处理程序将刷新页面。

关于javascript - 单页应用程序发布/更新后如何回发到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59586198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com