华为云Astro工作流对接使用完全指南:从入门到实战
1. 华为云Astro工作流:企业流程自动化的新引擎
在数字化转型浪潮中,企业业务流程的自动化程度直接决定了运营效率。华为云Astro工作流(AstroFlow)应运而生,它是华为云提供的一款自动化流程引擎服务,以通用办公流程为场景基础,满足企业中人财物事的调、转、入、离、审、评和批等任务的数字化需求。Astro工作流同时提供各类流程触发、数据连接和表单集成能力,帮助用户轻松实现各类服务应用构建流程的自动化。
Astro工作流的核心优势在于其低代码甚至零代码的开发模式。开发者通过简单的拖拽式操作、参数配置以及图形化流程编排,就能快速构建复杂的业务流程。这种模式大幅降低了开发门槛,让业务人员也能参与到流程设计中来,真正实现了业务与技术的深度融合。
2. 核心概念解析:应用、表单、流程与连接器
在深入探讨对接使用之前,有必要先理解Astro工作流的几个核心概念。
2.1 应用
应用是在华为云Astro工作流中搭建的业务软件或业务系统的统称,是业务系统运行时的访问入口,由表单和流程组成。用户在开发应用时创建表单和流程并进行关联,在运行应用时通过提交表单来触发流程并记录业务数据。
2.2 表单
表单由多个组件组成,是数据填报和收集的工具。Astro工作流提供了可视化的表单编辑器,通过拖拽组件、设置组件属性和发布表单三步即可快速搭建表单。表单组件包括数值组件、文本组件等多种类型,不同的组件类型可以存储不同的数据类型。
2.3 流程
流程用于实现业务数据的自动化处理和自动流转。在Astro工作流中,一条流程由1个触发器和N个动作节点组成。触发器是工作流能否启动的开关,满足了触发器的条件才能启动流程;动作节点是流程中自动执行的操作,流程中需要进行的数据操作、通知、审批等任务都需要对应的动作节点来完成。
2.4 连接器
连接器是Astro工作流提供的调用第三方服务的集成工具。通过连接器,开发者无需关注具体代码实现,只需要选择所需的连接器和配置动作,即可在流程中快速集成其他系统。Astro工作流提供两种连接器:官方连接器和自定义连接器。官方连接器是Astro低代码平台封装的对接各类服务的连接器;自定义连接器则是在官方连接器不能满足需求时,用于将第三方服务集成到流程中使用的。
需要先登录华为云控制台,点击:华为云控制台,还没有账号,点击:注册并关联,已有账号点击:登录后关联
3. 工作流触发方式:让流程自动跑起来
Astro工作流支持多种触发方式,开发者可以根据业务场景灵活选择。
3.1 表单触发
表单触发是最常用的触发方式,当表单中新增或更新记录时自动触发流程执行。例如,当员工发起一条请假申请时触发流程,自动发送邮件告知主管。
表单触发的触发方式包括四种:当新增或更新记录时、仅新增记录时、仅更新记录时、删除数据时。开发者还可以设置触发字段和触发条件,实现更精细的流程控制。
3.2 定时触发
定时触发是一种精确的时间驱动机制,能够在预设的时间点激活并周期性地执行指定的任务序列。例如,设定每晚17点发送日报填写提醒。定时触发广泛应用于多个领域和场景,不仅提高了操作的效率,也确保了流程的规范性和可靠性。
创建定时触发流程时,需要在开始节点设置具体的触发时间,建议配置完成后使用测试数据功能验证运行结果是否符合预期。
3.3 自定义启动(接口调用)
将工作流开始图元的开始类型设置为自定义启动,不指定事件的起因,主要用于通过接口调用来启动工作流。这种方式适用于需要从外部系统触发工作流的场景。
4. 对接方式一:连接器对接——打通第三方服务
连接器是Astro工作流对接外部系统的核心工具,下面详细介绍如何使用连接器进行对接。
4.1 官方连接器的使用
官方连接器是Astro低代码平台封装好的对接各类服务的连接器,涵盖了OBS、Redis、云搜索、ROMA等丰富的云服务。开发者只需要配置服务地址和鉴权信息,即可在服务编排或脚本中快速集成第三方系统。
在流程中使用官方连接器的步骤如下:
- 在流程设计页面添加连接器节点
- 选择所需的官方连接器
- 配置连接器动作和参数
- 连接器的返回值可在后续节点中使用
4.2 自定义连接器的创建与使用
当官方连接器无法满足需求时,可以通过创建自定义连接器来对接第三方服务。
创建自定义连接器的步骤:
- 登录Astro轻应用应用设计器
- 在左侧导航栏中选择集成,单击连接器中的连接器实例
- 选择自定义连接器类型,单击创建
- 配置连接器的标签、名称、图标和描述信息
- 在动作页签中新建动作,设置URL、请求方法、内容类型等参数
自定义连接器支持多种请求方法,包括GET、POST、PUT、PATCH、DELETE和OPTIONS。内容类型支持application/json、application/x-www-form-urlencoded、application/xml、multipart/form-data、text/html和text/plain等多种格式。
不同版本对自定义连接器的数量限制不同:基础版支持5个自定义连接器,专业版支持100个,企业版支持300个。
4.3 Rest服务连接器与SOAP服务连接器
除了自定义连接器,Astro还提供了Rest服务连接器和SOAP服务连接器两种标准化的对接方式。
Rest服务连接器:当系统需要调用第三方提供的Rest协议接口时,通过配置Rest服务来实现。对接Rest服务后,为服务添加动作,即可调用第三方提供的Rest协议接口。
SOAP服务连接器:当系统需要调用第三方提供的SOAP协议接口时,通过配置SOAP服务来实现。对接SOAP服务后,可以为服务添加动作,将第三方接口转换成Astro可识别的格式。
5. 对接方式二:API接口对接——实现系统间互联
除了连接器方式,Astro工作流还提供了丰富的API接口,支持开发者通过编程方式与外部系统进行对接。
5.1 启动工作流实例的REST API
通过调用工作流的REST接口,可以从外部系统启动工作流实例。接口URI为:POST {Astro域名}/u-route/baas/bp/v2.0/runtime/instances。
请求参数说明:
- name:必填,工作流的名称
- version:可选,工作流版本号,不带版本号表示运行当前启用的版本
- variables:可选,工作流中定义的变量,为key-value形式
请求示例:
POST {Astro域名}/u-route/baas/bp/v2.0/runtime/instances
{
"name": "createCloudOK_NEW",
"version": "1.0.1",
"variables": {
"name": "sun",
"memorySize": "15",
"storageSize": "15",
"expiryDate": "2018-12-12"
}
}响应示例:
{
"resCode": "0",
"resMsg": "Success",
"result": {
"name": "bpName1",
"version": "1.0.1",
"id": "002N000000Sy2NphoRbU",
"state": "Dispatched",
"bpStatus": "New",
"startTime": "2019-08-27 10:53:04"
}
}其中resCode为0代表请求成功。
5.2 工作流其他API接口
工作流API还包括查询工作流实例、删除工作流实例、挂起/恢复/终止工作流实例等接口。此外,还可以通过API设置或修改工作流实例中变量的值。
5.3 开放接口供第三方调用
Astro支持将应用中开发的脚本、服务编排等包装成自定义REST接口,供第三方系统调用。在新建开放接口时,选择资源类型为服务编排并选择相应的服务编排,即可将服务编排绑定到服务接口上。第三方系统在调用前需要在Astro上进行鉴权注册,获取接入客户端ID和密钥等鉴权信息。
6. 对接方式三:脚本开发——实现复杂业务逻辑
针对业务逻辑比较复杂的场景,Astro提供了脚本(Script)能力,支持用户在线开发TypeScript脚本,完成灵活复杂的业务逻辑。
6.1 脚本的基本概念
脚本是代码化的,使用TypeScript开发。用户可以在前台页面配置对象数据、系统参数、错误码、事件和工作流后,在脚本中引用这些内容。脚本是内聚的,相当于生产积木的单元,可以对积木实现批量化处理的复杂场景。
6.2 在脚本中调用工作流
在脚本中,可以通过引入sys库,执行sys.invokeFlow方法进行服务编排的调用。这种方式实现了脚本与工作流的灵活组合,能够应对更加复杂的业务场景。
6.3 服务编排与脚本的协同
服务编排是Astro的核心低代码开发能力,通过拖拽式流程编排和参数配置快速组合功能。在服务编排中,可以通过配置脚本图元选择当前应用中的脚本进行调用。服务编排支持对逻辑判断组件、数据处理组件以及脚本、子服务编排、商业对象等进行可视化组合编排。这种脚本与服务编排的协同机制,让开发者既能享受低代码的便捷性,又能保留高代码的灵活性。
7. 实战案例一:员工请假审批流程
下面通过一个完整的员工请假审批流程案例,演示Astro工作流的对接使用全过程。
7.1 业务场景
员工登录应用发起请假申请,主管登录应用对申请进行审批。审批结果触发不同分支:同意则将结果通过邮件告知HR,驳回则流程返回员工名下,员工可再次编辑重新发起。
7.2 开发步骤
步骤一:搭建组织层级
在Astro低代码平台中,通过组织管理配置组织的各类信息、角色和授权关系。需要先创建一个组织,再为组织添加所需的成员(员工、主管和HR)。
步骤二:创建应用
登录AstroFlow界面,在我的应用全部应用中单击创建应用。设置应用名称(如员工请假申请)。应用是AstroFlow业务系统运行时的访问入口。
步骤三:添加表单
单击添加页面,添加一个员工请假申请表。表单由多个组件组成,是数据填报和收集的工具。
步骤四:创建表单触发流程
在主菜单中选择流程管理,单击创建流程。设置流程名称,触发条件选择表单触发。创建完成后进入流程设计页面。
设计流程的核心配置:
- 选中开始节点(表单触发),选择关联表单并设置触发方式
- 触发方式选择仅新增记录时
- 添加审批节点,配置主管审批
- 添加条件分支节点,根据审批结果分流
- 同意分支添加发送邮件节点通知HR
- 驳回分支将流程返回员工
流程设置完成后单击校验,对流程中参数的规则和合法性进行校验。校验通过后单击发布。
步骤五:发布应用
发布应用并获取应用运行态的访问地址,将地址分享给组织内的其他成员。
8. 实战案例二:定时日报提醒流程
定时触发是Astro工作流的另一重要能力。
8.1 业务场景
在每晚的17点30分,自动给同事发送邮件提醒填写工作日报。
8.2 开发步骤
步骤一:创建应用
登录AstroFlow界面,在我的应用全部应用中单击对应的应用进入。
步骤二:创建定时触发流程
在主菜单中选择流程管理,单击创建流程。设置流程名称,触发条件选择定时触发。
步骤三:配置触发时间
选中开始节点(定时触发),设置具体的触发时间。例如从某日开始,每天17点30分执行。
步骤四:添加动作节点
添加发送邮件节点,配置邮件服务器信息。编辑邮件内容,可以使用变量动态填充收件人、正文等信息。
步骤五:校验与发布
校验通过后发布流程。到达预设时间后系统会自动触发流程。
9. 工作流版本管理与最佳实践
9.1 版本管理
Astro工作流支持多版本可视化编排,实现无感切换。当业务发生变化时,可以基于原有工作流修改并保存为新版本。流程模板支持灵活引用、无缝升级和回滚。工作流启动后才可以在其他流程中使用,未启用则无法被选择。
9.2 最佳实践建议
- 合理规划命名空间:首次创建应用时需定义命名空间,一旦创建不能修改和删除
- 优先使用模板:如果业务场景贴合已有模板,建议基于模板快速创建工作流。系统内置了通用、HR、金融、项目等多类模板
- 善用连接器:优先使用官方连接器,不满足需求时再创建自定义连接器
- 流程校验:发布前务必使用校验功能检查参数规则和合法性
- 测试驱动:定时触发等配置完成后使用测试数据验证运行结果
- 权限管理:通过组织角色权限控制管理RBAC模型实现权限可控
10. 常见问题解答
问:Astro工作流和Astro轻应用是什么关系?
答:Astro工作流(AstroFlow)是华为云Astro低代码平台中的流程引擎服务,Astro轻应用(AstroZero)是低代码应用开发平台。两者同属Astro家族,Astro工作流专注于流程自动化,Astro轻应用提供更全面的应用开发能力。工作流功能在Astro轻应用中也有集成,用户可以在Astro轻应用中开发和运行工作流。
问:自定义连接器支持哪些鉴权方式?
答:自定义连接器支持AKSK和API鉴权两种方式。选择自定义连接器时,如果接口鉴权方式为AKSK或API鉴权,需要配置相应的授权信息。
问:流程发布后还能修改吗?
答:流程发布成功后不支持再次编辑,但可以基于该流程创建新版本进行修改。
问:如何从外部系统启动Astro工作流?
答:可以通过调用REST API接口启动工作流实例,接口地址为POST {Astro域名}/u-route/baas/bp/v2.0/runtime/instances。也可以在开始图元中设置为自定义启动类型,然后通过接口调用启动。
问:不同版本对连接器数量有何限制?
答:基础版支持自定义连接器5个,专业版支持100个,企业版支持300个。官方连接器在所有版本中均可调用。
问:表单触发可以关联多个表单吗?
答:表单触发节点只支持关联一个表单。如需关联多个表单,可以通过新增添加记录节点来实现。



