ASTRO轻应用 ASTROZERO-标准页面中预置的API:服务编排相关

时间:2024-06-28 14:55:50

服务编排相关

  • 初始化Flow

    API:context.flow(flowName)

    入参:flowName表示Flow名称。

    出参:Flow

    示例:

    // 初始化Flow
    let _flow = context.flow("flowName")
  • 设置Flow版本号

    API:_flow.version(version: string)

    入参:version表示flow版本号。

    出参:Flow。

    示例:

    // 设置Flow版本号
    _flow.version("0.0.1")
  • 运行Flow

    API:flow.run(params: Object)

    入参:params,输入参数,如下示例:

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 适用于一次调用,Flow即完成的场景
    // 运行Flow
    _flow.run({ param1: 'param1' }).then(function (res) {
        // TODO: Youre business logic
    })
  • 启动Flow

    API:_flow.start(params: Object)

    入参:params,输入参数,如下示例:

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 以下适用于多步操作的业务场景
    _flow.start({ param1: 'param1' }).then(function (res) {
        // TODO: Youre business logic
    })
  • 执行Flow下一步

    API:_flow.next(interviewID: string, params: Object)

    入参:interviewID为Flow运行实例ID,params为输入参数。

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 下一步
    _flow.next("{{ interviewID }}", { param1: 'param1' }).then(function (res) {
        // TODO: Youre business logic
    })
  • 返回Flow上一步

    API:_flow.back(interviewID: string, params: Object)

    入参:interviewID为Flow运行实例ID,params为输入参数。

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 上一步
    _flow.back("{{ interviewID }}", { param1: 'param1' }).then(function (res) {
        // TODO: Youre business logic
    })
  • 正常完成Flow

    API:_flow.finish(interviewID: string, params: Object)

    入参:interviewID表示Flow运行实例ID;params:输入参数,如下示例:

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 完成Flow
    _flow.finish("{{ interviewID }}", { param1: 'param1' }).then(function (res) {
        // TODO: Youre business logic
    })
  • 恢复Flow运行

    API:_flow.resume(interviewID: string, params: Object)

    入参:interviewID表示Flow运行实例ID;params:输入参数,如下示例:

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 恢复Flow
    _flow.resume("{{ interviewID }}", { param1: 'param1' }).then(function (res) {
        // TODO: Youre business logic
    })
  • 删除Flow实例

    API:_flow.terminate(interviewID: string, params: Object)

    入参:interviewID表示Flow运行实例ID;params:输入参数,如下示例:

    {
        param1: 'param1', 
        param2: { 
            param21: 'param21', 
            param22: 'param22'
        } 
    }

    出参:Promise。

    示例:

    // 删除Flow
    _flow.terminate("{{ interviewID }}", { param1: 'param1', param2: { param21: 'param21', param22: 'param22' } }).then(function (res) {
        // TODO: Youre business logic
    })
support.huaweicloud.com/api-astrozero/astrozero_api_00101.html