集简云教学 数据表教学 应用教学 开放平台 用户社区 语聚AI
打开导航
首页 > 应用教学 > 内置应用 > Webhook如何使用?
Webhook如何使用?
Webhook是一种简单快速连接企业内部与外部数据连接的方式, Webhook作为集简云的内置应用既可以进行流程触发,也可以用于执行向其他系统同步数据。

1 什么是Webhook?

 

Webhook是一种简单快速联通企业内部与外部数据的方式。 Webhook作为集简云的内置应用既可以进行流程触发,也可以用于执行向其他系统同步数据。

 

2 如何使用Webhook?

 

在集简云中您可以使用Webhook接收外部系统发送来的数据并使用到流程中, 也可以将流程中的数据通过Webhook推送到其他系统中。下面我们分别说明一下如何通过Webhook接收数据与发送数据

 

2.1 接收数据

 

接收数据是由集简云自动生成一个唯一的URL地址,将此URL地址添加到您的应用系统的回调地址中,例如金数据表单的推送地址,或者简道云的事件回调地址,Udesk客服系统的事件回调地址,或者Mautic执行动作发送webhook的设置中。

 

每当此Wehook URL地址收到数据后即可自动解析数据中的字段,并自动触发数据流程。

 

 

可以复制到任意可以设置事件回调地址的应用配置中:

示例:金数据表单数据推送

 

 

接收到数据后,webhook会把接收到的数据转换为样本:

 

样本数据可以在后续步骤中使用:

 

 

接收数据时的配置说明

 

这里我们介绍一下Webhook接收数据时的动作和配置说明:

集简云目前有三种接收Webhook的动作,我们分别说明一下:

 

触发动作:”当接收到数据时“动作如何使用?: 

这个动作指接收到外部推送数据,只展现请求Body体中的内容,我们以Postman为例:

我们标注出的Body下多种格式都支持推送到集简云并自动识别。

 

触发动作:"当接收到含请求头的数据时”动作如何使用?

 

有时候第三方系统发送的数据并不在body中,而是在请求头(Header)中或者在参数(Params)中,此时我们可以使用“当接收到含请求头的数据时”动作来获取完整的请求内容:

需要的数据在请求头(Header中)

 

通过“当接收到含请求头的数据时”动作,我们可以获取到全部的请求头(Header), 参数(Params) 以及请求体(Body)中的内容。

 

 

在接收数据后如何返回指定内容?

 

在接收到数据后,集简云Webhook会默认返回:

{
    "Code": 200,
    "Data": null,
    "Msg": "成功"
}

 

但是,一些第三方系统要求推送数据后返回指定的内容,以表示推送成功,否则会视为失败而继续推送数据。对于这种需求,您可以在接收数据时设置一个自定义的返回内容:

 

例如,如果第三方系统要求返回 “code”:"200", “data”:"success" 以表示成功接收到了数据,您可以在"自定义返回内容“中设置,设置后会按照您设置内容进行返回:

 

 

 

 触发动作:“当请求指定的数据接口拉取数据时”如何使用?

 

Webhook除了可以接收数据触发流程外,也可以定时查询指定接口是否有新数据,如果有新数据时,同步新数据并触发流程。

例如:如果我们希望通过“聚合数据”的“新闻头条”接口获取最新娱乐新闻(https://www.juhe.cn/docs/api/id/235),当有新的新闻时同步数据并自动触发流程。 但是聚合数据新闻接口并不会主动推送数据给集简云。此时,可以使用拉取方式,定时去拉取数据并判断是否有新数据,如果有的话,自动触发流程:

 

 

 

在设置时请注意一定要填写一个唯一的排重ID,这个ID将由于判断是否有新增数据,如果设置错误可能会出现重复数据推送。排重ID是一条数据中唯一的ID,比如新闻这个示例中,可以以 title (新闻标题),或者url (新闻链接地址)作为唯一的排重ID。

 

 

2 如何利用Webhook作为执行动作?

 

在做执行动作时,Webhook可以将数据流程中的数据按照自定义的格式发送到您的指定URL中,您的系统可以在接收到数据后进行处理,以达到与您内部系统进行集成的目的。

集简云 Webhook可以使用多种方式发送数据,包括Get, Post, PUT 和发送自定义请求内容

 

 

 

2.1 设置字段匹配

 

在字段匹配界面可以设置数据传送的格式,添加流程中的数据以匹配企业接收数据端需要的内容与格式

 

 

  • 接收地址URL: 接收此数据的URL地址
  • 数据:要传输的数据,第一列为字段Key,第二列为字段值,可以添加多个
  • Payload的类型:选则发送数据的格式,支持Form,Json, XML, Raw
  • 在数组中包裹请求:选择是否使用数组包裹上面设置的数据内容
  • 文件:发送数据中可以包含文件url,如果包括的话将自动文件将自动被转换为 multipart/form-data格式
  • 是否扁平化处理(Unflatten):如果使用则会将多个数组层级内的数据转化到一个层级,例如:

 

 

扁平化处理后将输出为:

 

 

  • Basic Auth:如果接收数据端有身份校验机制可以在这里设置身份信息,使用 | 符号区分用户名和密码
  • Header:可以设置多个Header信息

 

 

2.2 Webhook执行动作使用示例

 

我们通过一个示例来了解如何使用Webhook设置指定动作请求第三方接口。 在这个示例中,百度OCR接口,智能识别图片中的文字内容,这个接口的使用将分为两个步骤 (大部分接口只需要1个步骤即可,但为了展现更复杂的场景,我们示例中的需要两个步骤来完成接口调用):

 

步骤1:使用百度OCR提供 API Key 和 API Secrect 获取授权 Access Token (接口文档:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu

我们根据百度云的接口文档要求进行配置:

我们在集简云Webhook中选择 发生数据Post,请填写对应的参数:

 

发送数据后我们获取到了AccessToken:

 

 

步骤2:通过步骤1中获取Access Token,调用百度OCR接口将示例图片中的文字识别出来 (接口文档:https://cloud.baidu.com/doc/OCR/s/zk3h7xz52

 

 

点击发送,测试成功。

 

 

 

如果您的请求参数非常复杂可以使用 Webhook执行动作中的 “发送自定义请求”,这里可以设置Json格式的请求内容:

示例:

 

相关应用 查看更多
应用类型:集简云内置应用
Webhook

Webhook是一种简单快速连接企业内部与外部数据连接的方式, Webhook作为集简云的内置应用既可以进行流程触发,也可以用于执行向其他系统同步数据。

应用类型:集简云内置应用
Webhook

Webhook是一种简单快速连接企业内部与外部数据连接的方式, Webhook作为集简云的内置应用既可以进行流程触发,也可以用于执行向其他系统同步数据。

本篇目录
  • 1 什么是Webhook?
  • 2 如何使用Webhook?
  • 2.1 接收数据
  • 接收数据时的配置说明
  • 触发动作:”当接收到数据时“动作如何使用?: 
  • 触发动作:"当接收到含请求头的数据时”动作如何使用?
  • 在接收数据后如何返回指定内容?
  •  触发动作:“当请求指定的数据接口拉取数据时”如何使用?
  • 2 如何利用Webhook作为执行动作?
  • 2.1 设置字段匹配
  • 2.2 Webhook执行动作使用示例
  • 相关文章