嗨
我想为需要全屏运行的网络艺术应用程序构建一个控制面板,因此所有控制颜色和速度值等内容的面板都必须位于不同的窗口中。
我的想法是建立一个数据库来存储所有这些值,当我在控制面板窗口中进行更改时,应用程序窗口中的相应变量也会更新。所以,这基本上是一个实时更新,我可以通过 AJAX 设置一个时间间隔来不断检查更改但是我的问题是:我不能等待 30 秒左右才能发生更新,并且我想每 1 秒一次的 AJAX 请求是不可能的。
最后一个问题:有没有办法创建一种监听器来监听数据库中的更改,并在我更改控制面板中的某些值后立即触发主应用程序中的更新事件? Angular 或其他框架有这种功能吗?
(抱歉解释太长,但我希望通过提供上下文 [: )我的问题更清楚
最佳答案
网络套接字驱动的应用程序将有这个好处。这会给后端带来更多的复杂性,但好处是可以使您的应用程序尽可能接近实时。
Mozilla 开发网络有一些好的 documentation on websockets .
在前端,WebSocket 对象应该适用于大多数现代浏览器。
我不确定你的后端是用什么写的,但是Socket.IO对于 Node.js 和 Tornado for Python 将使您的应用程序支持 Web 套接字
关于javascript - 使用 Javascript(真正)实时更新数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29782046/