Skip to main content

测试 web 挂钩

了解如何测试 Webhook 和测试处理 Webhook 交付的代码。

关于测试 Webhook

可以测试 Webhook 交付。 这将让你验证 GitHub 是否发送 Webhook 交付,以响应你希望触发 Webhook 交付的事件。

还可以使用电脑或 codespace 作为本地服务器,并将 Webhook 交付转发到本地服务器来测试处理 Webhook 交付的代码。 这样就可以在无需将代码部署到生产服务器的情况下开发和调试代码。

测试 Webhook 交付

可以触发 Webhook 事件并验证 GitHub 是否发送了 Webhook 交付。

  1. 触发 Webhook。 例如,如果正在测试 issues 事件的存储库 Webhook,可以在配置 Webhook 的存储库中提出问题。

    也可以重新交付先前的 Webhook 交付。 有关详细信息,请参阅“重新传递 Webhook”。

    如果你使用组织或存储库 Webhook,还可以使用 REST API 为 Webhook 触发 ping 事件。 如果你使用存储库 Webhook 并且 Webhook 订阅了该 push 事件,则可以使用 REST API 为 Webhook 触发测试 push 事件。 有关详细信息,请参阅 存储库 Webhook 的 REST API 终结点适用于组织 Webhook 的 REST API 终结点

  2. 检查 GitHub,验证是否已发送 Webhook 交付。 若要了解如何为每个 Webhook 类型执行此操作,请参阅“查看 web 挂钩交付”。

如果未发送 Webhook 交付,或者发送了 Webhook 交付,但 GitHub 表示传递失败,请参考故障排除指南来帮助诊断问题。 有关详细信息,请参阅“Webhook 疑难解答”。

在本地测试 Webhook 代码

若要在电脑或 codespace 上本地测试 Webhook,可以使用 Webhook 代理 URL 将 Webhook 从 GitHub 转发到电脑或 codespace。 可以使用电脑或 codespace 作为本地服务器来接收这些转发的 Webhook。

以下部分演示如何使用 smee.io 提供 Webhook 代理 URL 和转发 Webhook。

有关代码和测试步骤的特定示例,请参阅“处理 Webhook 交付”。

获取 Webhook 代理 URL

  1. 在浏览器中,导航到 https://smee.io/。
  2. 单击“启动新频道”。
  3. 复制“Webhook 代理 URL”下的完整 URL。 后续设置步骤会用到此 URL。

将 Webhook 配置为使用 Webhook 代理 URL

将 Webhook 配置为使用上述 Webhook 代理 URL。 有关详细信息,请参阅