j9九游会登录/ 函数工作流 functiongraph/ 用户指南/ / / 使用api网关服务(apig专享版)触发器
更新时间:2025-12-29 gmt 08:00

使用api网关服务(apig专享版)触发器-j9九游会登录

本节介绍如何通过函数工作流控制台创建apig触发器,实现使用api调用函数运行。

apig专享版触发器触发事件说明

apig专享版触发器是functiongraph与结合使用的一种方式,支持通过https或http协议调用functiongraph函数。通过apig的自定义rest api和终端节点,可以将特定的api操作(如get、post、put等)映射到对应的functiongraph函数。当用户向apig终端节点发送https请求时,apig会自动触发相应的functiongraph函数,从而实现api请求与函数的无缝对接。

操作视频

本视频介绍如何在函数中配置apig专享版触发器,并验证函数执行。

因产品功能演进,操作界面可能存在差异,相关视频仅供参考,具体以实际环境为准。

约束与限制

  • apig专享版触发器支持使用的区域和具体运行时函数请以控制台展示为准。
  • apig专享版触发器创建以后,不能停用,只能删除。
  • functiongraph函数对来自apig调用的返回结果进行了封装,apig触发器要求函数的返回结果中必须包含isbase64encoded(boolean)、statuscode(int)、headers(map)和body(string),即函数的返回结果中必须按以下示例结构返回字符串才可以正确返回。
    {
        "isbase64encoded": true|false,
        "statuscode": httpstatuscode,
        "headers": {"headername":"headervalue",...},
        "body": "..."
    }

    isbase64encoded的值默认为true,表示apig传递给functiongraph的请求体body已经进行base64编码,需要先对body内容base64解码后再处理。

  • apig专享版触发器调用的请求正文有效负载大小为4m。

前提条件

  • 已创建apig专享版实例,创建过程请参见创建apig实例
  • 已创建api分组,此处以“apigroup_test”分组为例,创建过程请参见。

创建apig专享版触发器

  1. 登录,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击右上方的“创建函数”,进入“创建函数”页面。
  3. 选择“创建空白函数”,配置以下函数信息,其他参数保持默认即可。
    • 函数名称:输入自定义的函数名称,例如:apig_demo。
    • 企业项目:选择“default”。
    • 委托:选择“未使用任何委托”。
    • 运行时语言:选择“python 3.12”。
  4. 单击“创建函数”,完成函数创建并进入函数详情页。
  5. 在“代码”页签下,复制以下代码至代码编辑区并单击“部署代码”。
    # -*- coding:utf-8 -*-
    import json
    def handler (event, context):
        body = "functiongraph demo

    hello, functiongraph!

    " print(body) return { "statuscode":200, "body":body, "headers": { "content-type": "text/html", }, "isbase64encoded": false }
  6. 图1所示选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。
    图1 创建触发器
  7. 参考表2配置触发器参数。
    表2 apig专享版触发器参数说明

    参数

    说明

    取值样例

    触发器类型

    选择“api网关服务(apig专享版)”。

    api网关服务(apig专享版)

    实例

    选择apig实例。若无实例,可单击“创建实例”完成创建。

    apig-fg

    api名称

    填写专享版apig触发器的名称。

    支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3-64字符。

    关于api更多配置信息的介绍请参考。

    api_apig

    分组

    选择api分组。api分组相当于一个api集合,api提供方以api分组为单位,管理分组内的所有api。

    若未创建分组,可单击“创建分组”完成创建。

    apigroup_test

    发布环境

    选择api的发布环境。api可以同时提供给不同的场景调用,如生产、测试或开发,选择“release”,才能调用。

    若未创建环境,可单击“创建发布环境”完成创建。

    release

    安全认证

    选择api的安全认证方式。

    api认证方式有以下三种:

    • app: 采用appkey&appsecret认证,安全级别高,推荐使用,详情请参见。
    • iam: iam认证,只允许iam用户能访问,安全级别中等,详情请参见。
    • none: 无认证模式,所有用户均可访问。

    示例中“安全认证”选择“none”,生产环境强烈建议开启app认证或iam认证。

    none

    请求协议

    选择api的请求协议。

    api的请求协议支持以下类型:

    • http:数据在传输过程中不被加密。
    • https:数据在传输过程中被加密。传输重要或敏感数据时推荐使用https。
    • http&https:此选项允许api同时支持http和https两种协议。

    https

    请求路径

    填写api的请求路径。

    请求路径是api访问地址的一部分,用于指定资源的唯一标识或层级结构。

    请求路径中的字母区分大小写。以斜杠(/)开头,不超过512个字符。请求路径可以包含请求参数,请求参数使用{}标识,例如/a/{b},也可以通过配置“ ”号做前缀匹配,例如:/a/{b }。

    /ttest

    匹配模式

    选择api的匹配模式。

    匹配模式定义了如何匹配api请求的url,api网关支持两种匹配模式:

    • 绝对匹配:绝对匹配要求请求路径必须与定义的路径完全一致。
    • 前缀匹配:前缀匹配允许请求路径以定义的路径为前缀。

    前缀匹配

    请求方法

    选择api的请求方法。

    支持的请求方法:get、post、delete、put、patch、head、options、any。

    其中any表示该api支持任意请求方法。

    any

    后端超时(毫秒)

    设置api的后端超时时间,单位为毫秒,设置范围为1~60000毫秒。

    5000

  8. 单击“确定”,完成触发器的创建。

调用函数

  1. 图2所示复制apig触发器的调用url,打开任意浏览器,在地址栏中输入调用地址并访问。
    图2 复制apig调用url
  2. 函数执行完毕,得到返回结果,如图3所示。
    图3 返回结果

查看函数运行结果

  1. 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击函数名称,单击进入函数详情页。
  3. 选择“监控 > 日志”,查询函数运行日志

相关文档

相关文档

网站地图