一、理解webhook工作原理
Webhook是什么,这里引用Github官方的描述
Webhooks
- Events
- Ping Event
Webhooks允许您构建或设置集成,例如GitHub Apps或OAuth Apps,这些集成订阅了GitHub.com上的某些事件。当这些事件之一被触发时,我们将向Webhook的配置URL发送HTTP POST有效负载。 Webhooks可用于更新外部问题跟踪器,触发CI构建,更新备份镜像,甚至部署到您的生产服务器。您仅受您的想象力限制。
Webhooks可以安装在组织,特定存储库或GitHub App上。安装后,每次发生一个或多个订阅事件时,都会发送webhook。
对于每个安装目标(特定组织或特定存储库)上的每个事件,您最多可以创建20个Webhook。Event
配置Webhook时,可以使用UI或API选择将向您发送有效载荷的事件。仅预订您计划处理的特定事件,这会限制对服务器的HTTP请求数量。您还可以订阅所有当前和将来的事件。默认情况下,仅Webhooks订阅推送事件。您可以随时更改已订阅事件的列表。
每个事件对应于您的组织和/或存储库可能发生的一组特定操作。例如,如果您订阅问题事件,则每次打开,关闭,标记问题等时,您都会收到详细的有效负载。
请参阅“ Webhook事件有效负载”以获取可用的Webhook事件及其有效负载的列表。Ping Event
当您创建新