更新时间:2025-11-19 GMT+08:00

创建空白华为云Astro轻应用服务编排

服务编排是一种通过简单的拖拉拽式流程编排以及参数配置的方式,来进行服务开发的能力。本章节以创建一个根据传入的用户名,配置欢迎信息的简单业务场景为例,向您介绍如何从零开始创建一个服务编排。

操作视频

本视频介绍在华为云Astro轻应用中,如何使用服务编排开发应用的业务逻辑。

创建服务编排

  1. 参考登录华为云Astro轻应用应用设计器中操作,登录应用设计器。
  2. 在左侧导航栏中,选择“逻辑”。
  3. (可选)单击编排后的,为服务编排添加目录。

    服务编排默认存放在根目录下,在创建服务编排前,您可以先创建服务编排存放的目录,也可以在服务编排创建后将其拖拽到指定目录。

  4. 将鼠标放在已创建的服务编排目录上,单击,进入“添加服务编排”页面。

    如果未创建服务编排目录,请直接单击编排后的,进入添加服务编排页面。

  5. 设置参数,单击“添加”。

    图1 创建服务编排
    表1 添加服务编排参数说明

    参数

    说明

    标签

    新建服务编排的标签名,用于在界面展示,创建后可修改。

    取值范围:1~64个字符。

    名称

    服务编排在系统中的唯一标识,创建后不支持修改。系统会自动在名称前添加“{命名空间}__”,当其他功能调用服务编排时,调用的是服务编排的名称,而不是标签。

    命名要求如下:

    • 长度不能超过64个字符,包括前缀命名空间的长度。

      名称前的内容为命名空间,在华为云Astro轻应用中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。

    • 名称必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。

    类型

    在下拉框中,选择服务编排的类型。
    • Autolaunched Flow:自启动Flow,在接口调用后会立即执行服务编排模型定义的逻辑。
    • Event Trigger:事件触发的服务编排,在事件触发时才会开始执行服务编排模型定义的逻辑。当选择该类型时,您需要配置具体的事件以及条件规则。

    默认值:Autolaunched Flow。

    描述

    请根据实际需求,输入服务编排的描述信息,建议设置为服务编排的功能介绍。

    取值范围:1~255个字符。

  6. 创建变量。

    1. 在服务编排设计器中,单击,进入全局上下文页面。
    2. 单击“变量”后的,创建表2中的变量。
      图2 创建变量
    表2 变量说明

    变量名

    类型

    变量说明

    userName

    文本

    传入的用户名

    message

    文本

    欢迎信息

    在全局上下文中,除了创建基本类型的变量,还可以创建常量、创建公式变量、创建私有结构体和创建对象变量/结构体变量/事件变量。

  7. 单击,配置服务编排的输入输出参数。

    图3 配置输入输出参数

  8. 将“逻辑”中的“赋值”图元,拖拽到画布中。

    赋值图元可以实现对全局上下文中变量等参数进行赋值,其他图元的详细介绍,请参见为华为云Astro轻应用服务编排设置图元。

    图4 拖拽赋值图元到画布

  9. 配置图元。

    1. 选择赋值图元,单击。
    2. 在“赋值”页面中,单击“新增行”,参照下图将创建的变量拖拽到相应的位置。

      将“"Hello,"”赋值给message变量,并将userName变量拼接到message变量中,赋值语句将从上往下依次执行。

      图5 配置赋值图元

  10. 连接图元指定逻辑关系,即从开始图元连向赋值图元,表示服务编排开始执行后,执行赋值图元的赋值语句。

    图6 连接图元

  11. 单击页面上方的,保存服务编排。
  12. 单击,进入服务编排调试页面。

    在输入参数中,输入如下内容,并单击“运行”。

    {
        "userName": "Flow"
    }

    运行结果如下,输出“Hello,Flow”。

    图7 运行结果

  13. 单击页面上方的,启用服务编排。

    服务编排启用后,才可以在脚本、工作流等操作中引用。

  14. 调试已创建的服务编排。

    1. 在应用设计器左侧导航栏中,选择“集成”。
    2. 单击开放接口后的“+”,新建一个helloFlow开放接口,单击“保存”。
      图8 新建开放接口helloFlow
    3. 接口创建后,在开放接口中,将鼠标放在已创建的接口上,单击,选择“查看”。
    4. 在预览页面,单击接口后的。
    5. 单击“测试一下”,输入示例模型,单击“执行”。
      图9 测试接口

      执行成功后,可查看到API的测试结果。

      {
          "resCode": "0",
          "resMsg": "成功",
          "result": [
              {
                  "message": "Hello, Flow"
              }
          ]
      }

创建常量

编排服务流程或交互时,不会改变的值或参数,通常定义为常量,例如服务标识、访问地址和错误码等。

  1. 在服务编排设计器右侧,选择。
  2. 在全局上下文页面,单击“常量”后的。
  3. 单击新增常量后的“...”,选择“设置”。
  4. 设置页面参数,单击“保存”。

    图10 配置常量
    表3 常量参数说明

    参数

    说明

    名称

    新建常量的名称,名称是变量在流程中引用的唯一标识。修改变量名不会改变图元中的引用,但是会导致流程不可用。

    数据类型

    常量的数据类型,直接在下拉框中选择即可,默认为“文本”类型。

    值

    新建常量的取值,字符串常量输入需要用双引号括起来,例如“"abc"”。

    描述

    根据实际需求,输入变量的描述信息。

    外部使用

    如果勾选该选项,表示该变量为外部使用变量,编译时不校验其是否被使用。

    默认为不勾选。

创建公式变量

在服务编排中,公式变量主要用于变量赋值、表达式计算、参数传递等。

  1. 在服务编排设计器右侧,选择。
  2. 在全局上下文页面,单击“公式”后的。
  3. 设置页面参数,单击“保存”。

    图11 配置公式变量
    表4 公式变量参数说明

    参数

    说明

    名称

    输入新建公式变量的名称。

    数据类型

    公式变量的数据类型,直接在下拉框中选择即可,默认为“文本”类型。

    描述

    根据实际需求,输入公式变量的描述信息。

    外部使用

    勾选该选项,表示该变量为外部使用变量,编译时不校验其是否被使用。

    默认为不勾选。

    表达式

    设置新增变量的表达式。如果表达式中需要运用公式,可根据需要双击“公式”区域中系统预置的公式,该公式会显示在右侧“表达式”区域中。当表达式中需要有变量参数时,可从变量区域中直接选择变量拖入到表达式中。

创建私有结构体

服务编排中如果涉及复杂的结构体参数,可以先创建全局或私有结构体,并用作参数类型。创建全局结构体和私有结构体后,再参考创建对象变量/结构体变量/事件变量中操作,创建全局结构体变量和私有结构体变量,作为服务编排的参数类型。

  1. 在服务编排设计器右侧,选择,在私有结构体页面单击“新增”。

    该“私有结构体”页面有两个“新增”按钮,单击上面的“新增”按钮,是通过设置页面参数新建私有结构体。单击下面的“新增”按钮,是通过输入JSON Schema类型的数据源码定义私有结构体。
    图12 添加私有结构体类型

  2. (如果上一步单击“私有结构体”页面上方的“新增”按钮,请执行该步骤)设置页面参数。

    • 在“基本信息”中,输入结构体名字、描述信息。
    • 在“结构体成员”中,设置自定义成员变量,包括设置成员变量的名称、数据类型、是否必填、是否是集合和描述信息等。单击“新增”,可增加成员变量,支持设置全局结构体或私有结构体成员变量。当私有结构体的成员变量包含结构体类型时,您需要提前定义成员结构体。例如,下图中成员变量“hobby”为私有结构体类型,需要提前创建“create”私有结构体。
    图13 配置私有结构体

  3. (如果上一步单击“私有结构体”页面下方的“新增”按钮,请执行该步骤)在“创建JSON Schema”页面中,定义结构体名称,在“JSON源码”中输入数据源码,单击,系统会进行校验,转换成服务编排中的结构体类型,单击“保存”。

    图14 创建JSON Schema

    数据源码示例如下:

    {
        "name": "xiaoming",
        "age": 18,
        "father": {
            "name": "daliu",
            "gender": "male"
        },
        "brother": {
            "name": "xiaolei",
            "gender": "male"
        }
    }

    创建成功后,页面显示如下。

    图15 创建成功

    该方式创建的结构体中,包含成员结构体时,成员结构体具体定义不会在界面显示,且其他结构体不可引用。

    JSON结构体支持嵌套,例如上述创建的“family”结构体,在“JSON Schema结构体”区域再次单击“新增”,新增“company”结构体,里面“ceo”嵌套引用“family”结构体,如下图所示,在定义结构体输入值时,您可以输入“$”符号,选择当前服务编排中的其它结构体进行嵌套引用。

    图16 引用其他结构体

创建对象变量/结构体变量/事件变量

对象变量用于在服务编排中引用或操作特定的对象实例,用于较简单的业务流程中。结构体变量允许将多个不同类型的数据项进行组合,通常用于较复杂的业务流程中。事件变量用于表示系统或业务流程中发生的事件,事件可以是系统内部产生的,也可以是外部触发的。

  1. 在服务编排设计器右侧,选择。
  2. 在全局上下文页面,单击“对象变量”后的。
  3. 设置页面参数,以创建对象变量为例进行介绍。

    图17 配置对象变量
    表5 对象变量参数说明

    参数

    说明

    名称

    输入新建对象变量的名称,名称是变量在流程中引用的唯一标识。修改变量名不会改变图元中的引用,但是会导致流程不可用。

    对象

    请直接在下拉框中,选择具体的对象。选择“对象”类型时,该参数才会显示。

    全局结构体

    请直接在下拉框中,选择具体的全局结构体。选择“全局结构体”类型时,该参数才会显示。

    私有结构体

    请直接在下拉框中,选择具体的私有结构体。选择“私有结构体”类型时,该参数才会显示。

    事件

    请直接在下拉框中,选择具体的事件。选择“事件”类型时,成员变量为事件的自定义字段,不包括系统预置的标准字段。选择“事件”类型时,该参数才会显示。

    默认值

    请直接输入变量的默认值或从下拉框中选择。

    描述

    请根据实际需求,输入变量的描述信息。

    取值范围:1~255个字符。

    是否为数组

    是否为数组变量,即集合变量。

    默认为不勾选。

    外部使用

    勾选该选项,表示该变量为外部使用变量,编译时不校验其是否被使用。

    默认为不勾选。