关于创建 Webhook
你可以创建 Webhook 来订阅在存储库、组织、GitHub Marketplace 帐户、GitHub Sponsors 帐户或 GitHub 应用中发生的特定 GitHub 事件。
有关不同类型 Webhook 的详细信息,请参阅“Webhook 类型”。
有关 Webhook 事件的完整列表,请参阅“Webhook 事件和有效负载”。
创建存储库 Webhook
你可以创建 Webhook 来订阅在特定存储库中发生的事件。你必须是存储库所有者或在存储库中具有管理员访问权限才能在该存储库中创建 Webhook。
你可以使用 GitHub Web 界面或 REST API 来创建存储库 Webhook。有关使用 REST API 创建存储库 Webhook 的详细信息,请参阅“存储库 Webhook 的 REST API 端点”。
-
在 GitHub.com 上,导航到存储库的主页。
-
在存储库名称下方,单击 设置。如果你看不到“设置”选项卡,请选择 下拉菜单,然后单击设置。
-
在左侧边栏中,单击 Webhook。
-
单击添加 Webhook。
-
在“有效负载 URL”下,键入您希望接收有效负载的 URL。
-
(可选)选择内容类型下拉菜单,然后单击一种数据格式来接收 Webhook 有效负载。
- application/json 将直接将 JSON 有效负载作为
POST
请求的主体传递。 - application/x-www-form-urlencoded 将以名为
payload
的表单参数发送 JSON 有效负载。
- application/json 将直接将 JSON 有效负载作为
-
(可选)在“密钥”下,键入一个字符串用作
secret
密钥。您应该选择一个具有高熵的随机文本字符串。您可以使用 Webhook 密钥来将传入请求限制为仅来自 GitHub 的请求。有关详细信息,请参阅“验证 Webhook 传递”。 -
在“您希望哪个事件触发此 Webhook?”下,选择您希望接收的 Webhook 事件。您应该仅订阅您需要的 Webhook 事件。
-
如果您选择了让我选择单个事件,请选择您希望触发 Webhook 的事件。
-
要在添加配置后立即激活 Webhook,请选择活动。
-
单击添加 Webhook。
在您创建新的 Webhook 后,GitHub 将向您发送一个简单的 ping
事件,让您知道您已正确设置 Webhook。有关详细信息,请参阅“Webhook 事件和有效负载”。
创建组织 Webhook
您可以创建一个 Webhook 来订阅在特定组织中发生的事件。您必须是组织所有者才能在该组织中创建 Webhook。
您可以使用 GitHub Web 界面或 REST API 来创建组织 Webhook。有关使用 REST API 创建组织 Webhook 的详细信息,请参阅“组织 Webhook 的 REST API 端点”。
- 在 GitHub.com 上的任何页面的右上角,单击您的个人资料照片。
- 单击您的组织。
- 在组织右侧,单击设置。
- 在左侧边栏中,单击 Webhook。
- 单击添加 Webhook。
- 在“有效负载 URL”下,键入您希望接收有效负载的 URL。
- (可选)选择内容类型下拉菜单,然后单击一种数据格式来接收 Webhook 有效负载。
- application/json 将直接将 JSON 有效负载作为
POST
请求的主体传递。 - application/x-www-form-urlencoded 将以名为
payload
的表单参数发送 JSON 有效负载。
- application/json 将直接将 JSON 有效负载作为
- (可选)在“密钥”下,键入一个字符串用作
secret
密钥。您应该选择一个具有高熵的随机文本字符串。您可以使用 Webhook 密钥来将传入请求限制为仅来自 GitHub 的请求。有关详细信息,请参阅“验证 Webhook 传递”。 - 在“您希望触发此 Webhook 的哪些事件?”下,选择您希望接收的 Webhook 类型。您应仅订阅您需要的 Webhook 事件。
- 如果您选择让我选择单个事件,请选择将触发 Webhook 的事件。
- 要在添加配置后立即激活 Webhook,请选择活动。
- 单击添加 Webhook。
在您创建新的 Webhook 后,GitHub 将向您发送一个简单的 ping
事件,让您知道您已正确设置 Webhook。有关详细信息,请参阅“Webhook 事件和有效负载”。
创建 GitHub Marketplace Webhook
您可以创建 Webhook 以订阅与您在 GitHub Marketplace 中发布的应用相关的事件。只有应用所有者或拥有该应用的组织的应用管理器才能创建 GitHub Marketplace Webhook。
- 导航到您的GitHub Marketplace 列表页面。
- 在您希望查看 Webhook 传递的 GitHub Marketplace 列表旁边,单击管理列表。
- 在侧边栏中,单击Webhook。
- 在“有效负载 URL”下,键入您希望接收有效负载的 URL。
- (可选)选择内容类型下拉菜单,然后单击一种数据格式来接收 Webhook 有效负载。
- application/json 将直接将 JSON 有效负载作为
POST
请求的主体传递。 - application/x-www-form-urlencoded 将以名为
payload
的表单参数发送 JSON 有效负载。
- application/json 将直接将 JSON 有效负载作为
- (可选)在“密钥”下,键入一个字符串用作
secret
密钥。您应该选择一个具有高熵的随机文本字符串。您可以使用 Webhook 密钥来将传入请求限制为仅来自 GitHub 的请求。有关详细信息,请参阅“验证 Webhook 传递”。 - 要在添加配置后立即激活 Webhook,请选择活动。
- 单击创建 Webhook。
在您创建新的 Webhook 后,GitHub 将向您发送一个简单的 ping
事件,让您知道您已正确设置 Webhook。有关详细信息,请参阅“Webhook 事件和有效负载”。
创建 GitHub Sponsors Webhook
您可以创建 Webhook 以订阅与您的赞助相关的事件。只有赞助帐户的所有者才能为该帐户创建赞助 Webhook。有关赞助 Webhook 订阅的事件的更多信息,请参阅sponsorship
Webhook 事件。
- 在任何页面的右上角,单击您的个人资料照片,然后单击您的赞助。
- 在您希望为其创建 Webhook 的帐户旁边,单击仪表板。
- 在左侧侧边栏中,单击Webhook。
- 单击添加 Webhook。
- 在“有效负载 URL”下,键入您希望接收有效负载的 URL。
- (可选)选择内容类型下拉菜单,然后单击一种数据格式来接收 Webhook 有效负载。
- application/json 将直接将 JSON 有效负载作为
POST
请求的主体传递。 - application/x-www-form-urlencoded 将以名为
payload
的表单参数发送 JSON 有效负载。
- application/json 将直接将 JSON 有效负载作为
- (可选)在“密钥”下,键入一个字符串用作
secret
密钥。您应该选择一个具有高熵的随机文本字符串。您可以使用 Webhook 密钥来将传入请求限制为仅来自 GitHub 的请求。有关详细信息,请参阅“验证 Webhook 传递”。 - 要在添加配置后立即激活 Webhook,请选择活动。
- 单击创建 Webhook。
为 GitHub 应用创建 Webhook
GitHub 应用的所有者可以订阅应用到 Webhook 事件,以便在发生某些事件时接收通知。如果组织为组织拥有的 GitHub 应用指定了任何应用管理器,则应用管理器也可以订阅应用到 Webhook 事件。有关更多信息,请参阅“使用 GitHub 应用的 Webhook”。
每个 GitHub 应用都有一个 Webhook。您可以在注册 GitHub 应用时配置 Webhook,也可以编辑现有 GitHub 应用注册的 Webhook 配置。
有关在注册 GitHub 应用时配置 Webhook 的更多信息,请参阅“注册 GitHub 应用”。
为现有的 GitHub 应用程序注册配置 Webhook
-
在 GitHub 上任何页面的右上角,单击您的个人资料照片。
-
导航到您的帐户设置。
- 对于个人帐户拥有的应用程序,单击设置。
- 对于组织拥有的应用程序
- 单击您的组织。
- 在组织右侧,单击设置。
-
在左侧边栏中,单击 开发者设置。
-
在左侧边栏中,单击GitHub 应用程序。
-
在您要为其配置 Webhook 的 GitHub 应用程序旁边,单击编辑。
-
在“Webhook”下,选择活动。
-
在“Webhook URL”下,键入您希望接收有效负载的 URL。
-
(可选)在“Webhook 密钥”下,键入一个字符串用作
密钥
。您应该选择一个熵值高的随机文本字符串。您可以使用 Webhook 密钥将传入请求限制为仅来自 GitHub 的请求。有关更多信息,请参阅“验证 Webhook 传递”。 -
单击保存更改。
-
在边栏中,单击权限和事件。
-
您可以为 GitHub 应用程序注册选择的特定 Webhook 事件由您为应用程序选择的权限类型决定。您首先需要选择您希望应用程序具有的权限,然后您可以订阅应用程序到与该权限集相关的 Webhook 事件。
在“存储库权限”、“组织权限”和“帐户权限”部分下,选择应用程序将订阅的事件所需的权限。有关详细信息,请参阅“为 GitHub 应用程序选择权限”。有关在更改权限时需要注意的事项的详细信息,请参阅“修改 GitHub 应用程序注册”。
-
在“订阅事件”下,选择希望 GitHub 应用程序接收的 Webhook 事件。
-
单击保存更改。
您还可以使用 REST API 为 GitHub 应用程序创建 Webhook。有关详细信息,请参阅“GitHub 应用程序 Webhook 的 REST API 端点”。