我有一个显示一些数据的网页。我有一个持续更新数据的python脚本(从数据库中获取数据,并将其写入html页面)。脚本获取数据大约需要5分钟。我将 html 页面设置为使用元标记每 60 秒刷新一次。但是,我想更改它并在 python 脚本更新后立即刷新页面,所以基本上我需要在我的 python 脚本中添加一些代码,以便在它完成写入后立即刷新 html 页面。
这可能吗 ?
如果不深入研究像 WebSockets 这样的复杂现代事物,服务器就无法将通知“推送”到 Web 浏览器。但是,您可以做的是,它使客户端以用户不可见的方式检查更新。
它将涉及编写 Javascript 和编写一个额外的文件。在编写主网页时,在 Javascript 中添加时间戳(此处最简单的是 Unix 时间戳)。您还可以将相同的时间戳写入 Web 服务器上的文件(我们称之为updatetime.txt
)。在页面上使用 AJAX 请求,您拉入 updatetime.txt 并查看文件中的数字是否大于生成文档时存储的数字,如果您看到更新的时间,请刷新页面。您可以更改“立即”注意到更改的方式,但可以控制轮询的速度。
我不会详细介绍编写代码,但我可能只是使用$.ajax()
JQuery(即使它对一个函数来说有点矫枉过正)来进行调用。在 JS 中放置一些东西的诀窍是setinterval
. 您应该能够找到大量关于使用它们已经编写好的文档。