我是 Webhooks 的新手,如果这是一个简单的问题,请原谅。
我很清楚 Webhook 提供程序是如何工作的,即每当需要推送此信息时,它都会将有效负载发送到指定为回调的 URL。
现在我的问题是:如何编写一个客户端 Webhook 处理程序,它可以检测/处理回调并相应地更新我的客户端。例如,如果我的客户端是一个带有要点的简单网页,我想在新数据出现时将其附加到列表中。
我最好寻求完整的 JavaScript 解决方案......
是否可能已经存在 JS WebHook 客户端/处理程序?看来这应该很常见,应该存在,虽然我还没有找到任何东西。
看一下 WebSocket。根据您的需求,这可能正是您避免轮询和保持同步所需的 - 特别是如果您有很多客户端需要从服务器查看相同的更新。
我强烈推荐Socket.IO
网络钩子不是为此而设计的。 Web hooks 中的事件通知是通过 POST 请求完成的,这意味着您的客户端应用程序无法收到有关新事件的通知,除非它侦听传入的 HTTP 请求(通常客户端位于防火墙后面,因此在大多数情况下这不可行)。
如果您想避免轮询服务器以获取状态更新,请按照 matthewhudson 指出的那样使用 WebSocket。
要使用 Webhook API 端点,或者换句话说,“监听更改”,您需要轮询更改、长轮询更改或您想做的任何其他聪明的事情。
或者您可以使用任何 javascript 发布者订阅者模块轻松执行此操作。尝试用谷歌搜索 PubSub 的东西。以下是此类工具的示例:http://www.pubnub.com/tutorial/javascript-push-api
监听后端的 webhooks,然后通过 websockets 将服务器连接到前端