PGYER開發者服務平台致力於提供優秀的開發者上下游服務,解決開發者在整個開發者生命週期中的各個需求。
掃碼關注
PGYER微信公眾號
獲取最新動態、官方福利、優惠活動等信息
PGYER文件中心
Webhook 就是用户通过自定义回调的方式来改变 Web 应用的一种行为,这些回调可以由不是该 Web 应用官方的第三方用户或者开发人员来维护,修改。通过 Webhook,你可以自定义一些行为通知到指定的 URL 去。
在蒲公英中,使用 Webhook 功能,开发者可以将蒲公英上的部分事件消息,同步到另一个平台(或网站)上去。例如:开发者在蒲公英平台中,上传了一个应用版本、或者收到一条用户反馈时,蒲公英都会将这个消息推送到开发者制定的一个指定 URL 上去。
目前,蒲公英支持如下三种事件类型:
首先进入 应用管理
,点击一个 应用名称
,之后在点击 设置
-> Webbook
中,即可看到针对该应用的 Webhook 设置。第一次进入该页面时,会直接显示出创建 Webhook 的页面。
按照提示填写以下内容:
Webhook 名称
给即将创建的 Webhook 起一个名字。例如:WebhookTest 等URL
设置蒲公英在发生事件时,将事件的消息推送到哪里。也就是说,接受蒲公英事件的 URL。如果是需要集成纷纭或 HiWork 等服务 ,该 URL 由纷纭或 HiWork 提供。选择要推送的功能
设置蒲公英将哪些事件消息发送给上面填写的 URLWebhook 状态
可以打开或者关闭蒲公英发送事件填写好之后,点击 保存信息
按钮,即可成功创建一条 Webhook 。这样,蒲公英就会在上述相关事件发生时,将消息推送到刚刚设置的 URL 上。
蒲公英支持对同一个应用设置多个 Webhook,开发者可以重复上述过程,再次创建即可。但是同一个应用最多只能添加 3 个 Webhook。
如果开发者是自己开发 Webhook 服务或者仅仅想测试,推荐使用 Request
服务(http://request.lesschat.com/)。
蒲公英针对第三方的 Webhook 服务,当蒲公英发送事件时,使用 HTTP POST
请求,Content-Type
为 application/json
,数据格式为 JSON
。 例如,有应用的新版本上传时,蒲公英发送的数据格式类似如下形式(实际情况下会有稍许不同):
{
"action": "应用更新",
"title": "OooPlay",
"link": "https://www.pgyer.com/oooplay_test",
"message": "您的应用OooPlay有了新的版本(2.4)更新。",
"type": "updateVersion",
"os_version": "2.4",
"build_version": "139",
"created": "2015-10-09 11:25:16",
"updated": "2015-10-09 11:25:16",
"timestamp": 1444361118,
"appsize": "2238036",
"device_type": 'iOS',
"notes": "修复了一些小弱智的小bug"
}
当应用收到『摇一摇反馈』信息时,蒲公英会发送如下类似格式的数据(实际情况下会有稍许不同):
{
"action": "应用反馈",
"title": "OooPlay",
"link": "https://www.pgyer.com/oooplay_test",
"message": "您的应用OooPlay收到一条新的反馈信息",
"type": "feedback",
"os_version": "2.4",
"build_version": "139",
"created": "2015-10-09 11:25:16",
"updated": "2015-10-09 11:25:16",
"timestamp": 1444361118,
"appsize": "2238036",
"device_type": 'iOS',
"notes": "修复了一些小弱智的小bug"
}
当应用收到 Crash Log 信息时,蒲公英会发送如下类似格式的数据(实际情况下会有稍许不同):
{
"action": "Crash log",
"title": "OooPlay",
"link": "https://www.pgyer.com/oooplay_test",
"message": "您的应用OooPlay收到了新的Crash Log",
"type": "crashlog",
"os_version": "2.4",
"build_version": "139",
"created": "2015-10-09 11:25:16",
"updated": "2015-10-09 11:25:16",
"timestamp": 1444361118,
"appsize": "2238036",
"device_type": 'iOS',
"notes": "libsystem_kernel.dylib 0x3094c49c mach_msg_trap 20 CoreFoundation 0x21edf7f3 <redacted> 146 CoreFoundation 0x21edddb9 <redacted> 1016 ..."
}
第三方 Webhook 服务可以使用获取 POST RAW 数据的方式来获取消息数据。例如,在 PHP 中可以用如下方式获取数据:
$data = file_get_contents('php://input');
或者:
$data = $HTTP_RAW_POST_DATA;
获取到数据之后,再进行 JSON DECODE 即可解析出具体的数据,例如:
$info = json_decode($data, true);
之后,第三方 Webhook 服务即可将获取到的消息数据,根据自身的业务逻辑进行相应处理,例如可以显示在自己平台的消息流、或通知中心等。
支付成功
PGYER VIP 用戶群
請打開微信 — 掃一掃,加入群聊