问题标签 [webhooks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
17621 浏览

javascript - 实现客户端 WebHook 处理程序?

我是 Webhooks 的新手,如果这是一个简单的问题,请原谅。

我很清楚 Webhook 提供程序是如何工作的,即每当需要推送此信息时,它都会将有效负载发送到指定为回调的 URL。

现在我的问题是:如何编写客户端 Webhook 处理程序,它可以检测/处理回调并相应地更新我的客户端。例如,如果我的客户端是一个带有要点的简单网页,我想将新数据附加到列表中,只要它通过。

最好,我会追求一个完整的 JavaScript 解决方案......

是否有可能已经存在的 JS WebHook 客户端/处理程序?似乎这应该很普遍,应该存在,尽管我一直找不到任何东西。

0 投票
2 回答
2123 浏览

python - Shopify webhook 在产品更新/删除时不起作用

背景:正在使用 shopify 提供的测试商店构建一个 shopify 应用程序。#Python #Django-

问题:我使用 python API 为我的测试商店设置了 shopify webhooks,主题为“products/update”和“products/delete”。但是当我手动更新或删除测试商店中的产品时,shopify 不会调用我的端点。

到目前为止我的侦探工作:我检查了以下内容:

  1. 我已经确认使用 API 成功创建了 webhook。我只是使用商店的 API 列出了所有现有的 webhook,我的就在那里。

  2. 我在 webhook 中为 shopify 在产品更新或删除时调用的地址/URL 是公共 url,因为它不在我的本地主机上。(不是 127.0.0.1:8000 等)

  3. 我的 webhook 端点很好。当我在测试用例中手动调用我的端点时,它会做它应该做的事情。

  4. 我联系了 shopify 应用程序支持人员,并被要求在此处发布此问题。

另一个小问题是,我无法在 shopify API 文档中准确找到 webhook 应该发布到我的 URL 的 JSON/XML。所以我不知道那个 JSON 会是什么样子......

任何帮助,将不胜感激!

0 投票
1 回答
2977 浏览

php - 如何处理 BrainTree 中的 Webhook

我正在尝试使用 BrainTree webhook 进行订阅交易,但无法让我的页面进行验证。

来自 BrainTree:https ://www.braintreepayments.com/docs/php/webhooks/destination_verification

当您尝试添加目的地时,我们的服务器将使用名为 bt_challenge 的查询参数向提供的 URL 发出 GET 请求。此查询参数应传递给验证方法。调用此方法的结果应作为响应的主体返回。

首先,我在 NodeJS 中进行了尝试(因为我们的事务以这种方式成功完成):

我的 PHP 页面与 NodeJS 进程通信并将结果放入正文中。一旦这个验证失败,我就直接用 PHP 写了一个测试页面:

但是,这也未能通过验证。不确定哪里出了问题,因为没有验证测试或任何错误迹象。我尝试联系 BrainTree 支持,但没有回复。

0 投票
1 回答
691 浏览

shopify - Shopify 网络钩子应用程序

我正在考虑实现一个shopify应用程序。应用程序的目的是当它安装在任何商店时。应用程序将自行设置 HTTP POST 请求 URL,当该商店有任何订单时,应用程序将通过 POST 向我们发送信息。

可以使用 webhook 吗?因为我找不到任何以编程方式使用 webhook 的方法。

0 投票
1 回答
749 浏览

.net - 为批量操作实施网络挂钩

我希望将Web 挂钩作为应用程序 REST API 的一部分来实现。

最初,我们希望为 API 消费者实现一种机制来注册实体更新事件。因此,如果一个实体发生更改,我们会调用所有已为该实体上的更改事件注册的 webhook(作为注册过程的一部分,API 使用者可以包含额外的过滤条件,以确保他们只接收他们感兴趣的实体子集的回调在)。

现在 - 这对于用户发起的更改效果很好,会慢慢渗入,但我担心当大量更改发生时如何最好地处理这个问题 - 例如作为在 UI 中执行的批量操作的一部分,或者API使用者发生的大量变化。

到目前为止,我已经考虑过:

  • 只需使用某种异步池为每个实体进行回调 - 我在这里看到的问题是规模并可能对订阅 Web 挂钩的那些应用程序造成损害。
  • 排队每个 webhook 注册的更改记录,超过 10 秒的窗口,然后将单个 webhook 通知推送到 subscribe 以及受影响的实体列表 - 我在这里看到的问题是我们在操作和 webhook 之间引入了不必要的延迟,当事件刚刚进入时 - 这也会引入一些开销和复杂性,特别是如果在网络农场场景中实现这一点。
  • 实际上将批量操作公开为网络挂钩 - 因此,如果执行批量删除,消费者将订阅它。因此,为单个实体更改设置挂钩不会收到任何用于批量更新/删除等的实体更改事件 - 他们必须通过批量操作 Web 挂钩来处理这个问题。

作为一些额外的细节 - 此应用程序中的批量操作可能包含 10 到大约 100,000 个实体。

有没有人为批量操作实施了网络挂钩,可以阐明他们如何决定实施这一点?

0 投票
1 回答
286 浏览

rabbitmq - RabbitMQ Topic Exchange Message for 1、部分或全部主题——如何构造它?

我有一条消息,需要由可变数量的队列处理。队列处理不同的目的——电子邮件、审计、webhook 处理、s3 存储。每条消息都可以将任何、部分或所有这些主题作为目标。例如,我可能会收到以下消息:

  • 消息 1:audit.webhook
  • 消息 2:网络钩子
  • 消息 3:email.audit.webhook.s3

请注意,虽然我演示了 4 个主题,但可能有 100 个。这可以通过主题交换来处理吗?例如,将主题.webhook。错过消息 2?我可以将三个主题添加到队列 webhook.* 、.webhook 和 *.webhook 来处理所有潜在的消息,或者我是否必须知道 webhook 结束的确切位置 - 即:. .webhook。. .* 或.webhook。足以捕获消息 1 和消息 3?这完全可以通过主题交换来处理,还是我看错了?

额外测试后编辑

看来路由不像我希望的那样灵活。看来,为了实现我想要实现的目标,例如,我必须拥有一个用于 .webhook 队列的绑定.*.webhook,并且消息必须始终将 webhook 保持在第 4 位,因此仅发送到 webhook 的消息的路由键必须是,例如“null,null,null,webhook,null , 空等

我的测试正确吗?我问是因为这似乎不正确。我认为有更多的灵活性,即:一种更好的方式来完成我想要完成的事情。

0 投票
1 回答
346 浏览

shopify - 如何为 API 创建的 webhook 触发测试 POST?

我正在从管理面板测试我的手工 webhook,但现在我已经使用 API 创建了一个,如何启动测试 POST?

谢谢,凯文

0 投票
2 回答
916 浏览

shopify - Shopify “应用程序/已卸载” webhook 缺少“HTTP_X_SHOPIFY_HMAC_SHA256”

我不知道发生了什么,但 Shopify Webhook“应用程序/卸载”没有返回“HTTP_X_SHOPIFY_HMAC_SHA256”值。它不在请求中的任何位置。如果没有 HMAC,则无法验证呼叫是否针对 Shopify。

我看到我的其他 Webhook 调用正在获取 HTTP_X_SHOPIFY_HMAC_SHA256 值,但它在“应用程序/已卸载”webhook 中完全缺失。

关于我做错了什么的任何想法?Shopify 现在只是有问题吗?

谢谢!

0 投票
1 回答
4573 浏览

shopify - Shopify 订单网络挂钩

我查看了不同的订单 webhook,想知道它们何时被触发。到目前为止,这是我想出的:

  1. orders/updated每当订单以任何方式更改时都会触发,包括创建订单(甚至在其被授权和orders/create触发之前)、关闭或取消时
  2. orders/create当用户授权支付时触发
  3. orders/paid当商家接受付款时被解雇
  4. orders/fulfilled当商家完成订单时被解雇
  5. orders/cancelled订单取消时触发

由于orders/updated每当其他钩子被触发时也会触发,似乎添加更新 webhook 足以保持本地数据存储与商店数据同步。但是,我想确认我对这些 webhook 的理解是正确的,即orders/updated当订单发生任何变化时总是会触发它是否正确。并且其他 webhook 只是针对更具体的用例?

0 投票
1 回答
1276 浏览

coldfusion - 接收并记录 webhook 帖子

我在 Stripe.com 上设置了一个帐户。我已经配置了一个用于测试的 webhook,并将测试帖子发送到“接收”这些请求的 cfm 页面。但是,我不确定这个页面是否在做它应该做的事情。目前,我只是转储所有数据。下面是页面代码的样子。

当我在本地运行该页面,或直接在我们的实时测试站点上调用它时,我会收到一封电子邮件,其中包含预期的所有数据。但是,如果我将页面设置为 webhook url,然后让 Stripe 向其发送测试消息,则什么都不会发生 - 没有电子邮件。我在错误日志中也看不到任何东西。这里可能出了什么问题?有人可以推荐一种更好的方法来接收和记录来自 Stripe 的 webhook 调用吗?我在这里有点不知所措。谢谢