我有一个简单但不寻常的问题。
我有一个客户端页面向 RESTful API 发出请求。所以客户端 PUT 没什么大不了的。表单将 JSON 发送到 API,然后将其存储在服务器数据库中。
但是,我有一个单独的页面,应该为我提供数据库的当前状态,例如行数。我需要在每次创建新行时更新计数。目前的解决方案是每隔5秒左右发送一次GET请求,这显然不太理想。如果尚未创建行,我不想查询数据库。
所以我需要在创建的每一行上都有一个触发器。这在 app/api/Controllers/AppController.js
中实现似乎很简单。但是,在此文件中,我引用了 PUTting 客户端,而不是 GETting 客户端。我如何在那里引用 GETting 客户端?
最佳答案
听起来您指的是推送服务,需要在服务器端实现。
如果放置和状态更新页面应该是同一 session 的一部分,您可以在存储数据时存储 cookie。然后,status
页面可以轮询 cookie,以便知道何时发出新的 AJAX 请求。您仍然需要客户端持续轮询,但由于 cookie 会跟踪您是否需要更新,这意味着网络调用会减少很多。
但只有当这应该是同一 session 的一部分时,这才有效。否则,您需要持续的 AJAX 轮询或某种推送服务。
关于javascript - 在模型更新时向不同客户端发送响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31039199/