javascript - 在模型更新时向不同客户端发送响应

标签 javascript angularjs sails.js

我有一个简单但不寻常的问题。

  1. 我有一个客户端页面向 RESTful API 发出请求。所以客户端 PUT 没什么大不了的。表单将 JSON 发送到 API,然后将其存储在服务器数据库中。

  2. 但是,我有一个单独的页面,应该为我提供数据库的当前状态,例如行数。我需要在每次创建新行时更新计数。目前的解决方案是每隔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/

相关文章:

javascript - 如何优化这段javascript代码?

javascript - 如何使用 JavaScript 正则表达式拆分字符串中的单词?

javascript - 未知提供商 : AuthenticationServiceProvider <- AuthenticationService <- loginControl

node.js - 根据客户端 POST 表单的字段切换套接字 [ Sails Node js ]

node.js - docker nginx 负载平衡不适用于 Azure

javascript - Angularjs 在集合中使用 Rowspan

javascript - 从本地目录 React 中的文件夹导入文件

javascript - 处理非 Angular 代码时如何立即更新 $scope?

javascript - 向 angularjs 应用程序添加常量

javascript - 如何在 mocha 测试中获取 sails 应用程序的运行时 url