更新时间:2024-03-21 GMT+08:00
分享

获取函数模板列表

功能介绍

获取函数模板列表

调用方法

请参见如何调用API

URI

GET /v2/{project_id}/fgs/templates

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户项目 ID,获取方式请参见获取项目ID

表2 Query参数

参数

是否必选

参数类型

描述

marker

String

本次查询起始位置,默认值0

缺省值:0

最小长度:1

最大长度:64

maxitems

String

每次查询获取的最大模板数量。

ispublic

String

是否为公开模板

runtime

String

指定运行时模板

scene

String

指定场景模板

service

String

指定云服务模板

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

Content-Type

String

消息体的类型(格式)

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

func_templates

Array of ShowFunctionTemplateResponseBody objects

函数模板列表

next_marker

Integer

函数下次记录读取位置。

表5 ShowFunctionTemplateResponseBody

参数

参数类型

描述

id

String

模板id

type

Integer

模板类型

title

String

模板标题

template_name

String

模板名称

description

String

模板描述

runtime

String

模板执行运行时

handler

String

模板函数执行入口

code_type

String

代码类型

code

String

代码文件

timeout

Integer

函数执行超时时间,超时函数将被强行停止,范围3~259200秒。

memory_size

Integer

内存大小

trigger_metadata_list

Array of TriggerMetadataList objects

触发信息列表

temp_detail

TempDetail object

user_data

String

用户数据

encrypted_user_data

String

加密用户数据

dependencies

Array of strings

模板所需依赖列表

scene

String

模板使用场景

service

String

模板关联云服务

表6 TriggerMetadataList

参数

参数类型

描述

trigger_name

String

触发名称

trigger_type

String

触发器类型

event_type

String

事件类型

event_data

String

事件数据

表7 TempDetail

参数

参数类型

描述

input

String

模板输入

output

String

模板输出

warning

String

警告信息

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 401

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 403

表10 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

状态码: 500

表11 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误信息

请求示例

获取500个公开函数模板列表。

GET /v2/{project_id}/fgs/templates?marker=0&maxitems=500&ispublic=true

响应示例

状态码: 200

OK

{
  "func_templates" : [ {
    "id" : "d3aa6e4c-xxxx-xxxx-9c09-5c50c4xxxxxx",
    "type" : 1,
    "title" : "access-service-with-http",
    "template_name" : "access-service-with-http-php",
    "description" : "access service with http.",
    "runtime" : "PHP7.3",
    "handler" : "index.handler",
    "code_type" : "inline",
    "code" : "xxxxx",
    "timeout" : 30,
    "memory_size" : 256,
    "trigger_metadata_list" : [ ],
    "temp_detail" : {
      "input" : "None",
      "output" : "execution succeed: Return to access service information through http/https,",
      "warning" : "1. configure the serveraddress environment variables."
    },
    "user_data" : "",
    "encrypted_user_data" : "",
    "dependencies" : [ ],
    "scene" : "basic_function_usage",
    "service" : "FunctionGraph"
  } ],
  "next_marker" : 1
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.functiongraph.v2.region.FunctionGraphRegion;
import com.huaweicloud.sdk.functiongraph.v2.*;
import com.huaweicloud.sdk.functiongraph.v2.model.*;


public class ListFunctionTemplateSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);

        FunctionGraphClient client = FunctionGraphClient.newBuilder()
                .withCredential(auth)
                .withRegion(FunctionGraphRegion.valueOf("<YOUR REGION>"))
                .build();
        ListFunctionTemplateRequest request = new ListFunctionTemplateRequest();
        request.withMarker("<marker>");
        request.withMaxitems("<maxitems>");
        request.withIspublic("<ispublic>");
        request.withRuntime("<runtime>");
        request.withScene("<scene>");
        request.withService("<service>");
        try {
            ListFunctionTemplateResponse response = client.listFunctionTemplate(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkfunctiongraph.v2.region.functiongraph_region import FunctionGraphRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkfunctiongraph.v2 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = __import__('os').getenv("CLOUD_SDK_AK")
    sk = __import__('os').getenv("CLOUD_SDK_SK")

    credentials = BasicCredentials(ak, sk) \

    client = FunctionGraphClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(FunctionGraphRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListFunctionTemplateRequest()
        request.marker = "<marker>"
        request.maxitems = "<maxitems>"
        request.ispublic = "<ispublic>"
        request.runtime = "<runtime>"
        request.scene = "<scene>"
        request.service = "<service>"
        response = client.list_function_template(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    functiongraph "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/functiongraph/v2"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/functiongraph/v2/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/functiongraph/v2/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := functiongraph.NewFunctionGraphClient(
        functiongraph.FunctionGraphClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListFunctionTemplateRequest{}
	markerRequest:= "<marker>"
	request.Marker = &markerRequest
	maxitemsRequest:= "<maxitems>"
	request.Maxitems = &maxitemsRequest
	ispublicRequest:= "<ispublic>"
	request.Ispublic = &ispublicRequest
	runtimeRequest:= "<runtime>"
	request.Runtime = &runtimeRequest
	sceneRequest:= "<scene>"
	request.Scene = &sceneRequest
	serviceRequest:= "<service>"
	request.Service = &serviceRequest
	response, err := client.ListFunctionTemplate(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

OK

400

Bad Request 请求错误。

401

Unauthorized 鉴权失败。

403

Forbidden 没有操作权限。

500

Internal Server Error 服务内部错误。

错误码

请参见错误码

相关文档