更新时间:2024-10-22 GMT+08:00
分享

查询字段列表

功能介绍

查询字段列表

调用方法

请参见如何调用API

URI

GET /v1/{project_id}/workspaces/{workspace_id}/soc/dataclasses/{dataclass_id}/fields

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目id

最小长度:32

最大长度:36

workspace_id

String

工作空间id

最小长度:32

最大长度:36

dataclass_id

String

数据类id

最小长度:32

最大长度:36

表2 Query参数

参数

是否必选

参数类型

描述

offset

Integer

偏移量

最小值:0

最大值:999999999

缺省值:0

limit

Integer

数据量

最小值:1

最大值:100

缺省值:10

name

String

名称查询

最小长度:0

最大长度:64

is_built_in

Boolean

是否内置

field_category

String

字段分类

最小长度:0

最大长度:1024

mapping

Boolean

是否展示在分类映射外的其他地方

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

最小长度:0

最大长度:2097152

content-type

String

内容类型

缺省值:application/json;charset=UTF-8

最小长度:0

最大长度:64

响应参数

状态码: 200

表4 响应Header参数

参数

参数类型

描述

X-request-id

String

请求ID,格式为:request_uuid-timestamp-hostname

表5 响应Body参数

参数

参数类型

描述

field_details

Array of FieldResponseBody objects

list of informations of field

数组长度:0 - 100

total

Number

数据总量

最小值:2

最大值:999999999

表6 FieldResponseBody

参数

参数类型

描述

id

String

Id value

最小长度:32

最大长度:64

cloud_pack_version

String

订阅包版本

最小长度:2

最大长度:64

business_id

String

关联业务id

最小长度:32

最大长度:64

business_type

String

关联业务

最小长度:2

最大长度:64

dataclass_name

String

数据类名称

最小长度:2

最大长度:64

business_code

String

字段业务编码

最小长度:2

最大长度:64

field_key

String

字段key

最小长度:2

最大长度:64

name

String

字段名称

最小长度:2

最大长度:64

description

String

字段描述

最小长度:2

最大长度:1024

default_value

String

默认值

最小长度:2

最大长度:1024

display_type

String

显示类型

最小长度:2

最大长度:64

field_type

String

字段类型,如shorttext,radio,grid等

最小长度:2

最大长度:64

extra_json

String

附加json

最小长度:2

最大长度:64

field_tooltip

String

工具提示

最小长度:2

最大长度:64

iu_type

String

输入输出类型

最小长度:2

最大长度:64

used_by

String

使用业务

最小长度:2

最大长度:64

json_schema

String

json模式

最小长度:2

最大长度:64

is_built_in

Boolean

是否内置,true内置,false非内置

case_sensitive

Boolean

大小写敏感,true敏感,false不敏感

read_only

Boolean

只读模式,true只读,false非只读

required

Boolean

是否必填,true必填,false非必填

searchable

Boolean

可搜索,true可搜索,false非可搜索

visible

Boolean

可见,true可见,false非可见

maintainable

Boolean

可维护,true可维护,false非可维护

editable

Boolean

可编辑,true可编辑,false非可编辑

creatable

Boolean

可创建,true可创建,false非可创建

mapping

Boolean

是否展示在分类映射外的其他地方

target_api

String

目标api

最小长度:0

最大长度:1024

creator_id

String

Creator id value

最小长度:32

最大长度:64

creator_name

String

Creator name value

最小长度:32

最大长度:64

modifier_id

String

Modifier id value

最小长度:32

最大长度:64

modifier_name

String

Modifier name value

最小长度:32

最大长度:64

create_time

String

Create time

最小长度:0

最大长度:64

update_time

String

Update time

最小长度:0

最大长度:64

状态码: 400

表7 响应Header参数

参数

参数类型

描述

X-request-id

String

请求ID,格式为:request_uuid-timestamp-hostname

表8 响应Body参数

参数

参数类型

描述

code

String

错误码

最小长度:0

最大长度:64

message

String

错误描述

最小长度:0

最大长度:1024

请求示例

查询字段列表,偏移量为10,查询3条

{
  "limit" : 3,
  "offset" : 10
}

响应示例

状态码: 200

请求成功

{
  "total" : 41,
  "field_details" : [ {
    "id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f",
    "cloud_pack_version" : "订阅包版本",
    "business_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f",
    "business_type" : "业务类型",
    "dataclass_name" : "业务id",
    "business_code" : "My Field",
    "field_key" : "字段key",
    "name" : "字段名称",
    "description" : "字段描述",
    "default_value" : "默认值",
    "display_type" : "显示类型",
    "field_type" : "shorttext",
    "extra_json" : "{}",
    "field_tooltip" : "工具提示",
    "iu_type" : "输入输出类型",
    "used_by" : "使用业务",
    "json_schema" : "{}",
    "is_built_in" : false,
    "case_sensitive" : false,
    "read_only" : false,
    "required" : false,
    "searchable" : false,
    "visible" : false,
    "maintainable" : false,
    "editable" : false,
    "creatable" : false,
    "mapping" : true,
    "target_api" : "目标api",
    "creator_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f",
    "creator_name" : "张三",
    "modifier_id" : "909494e3-558e-46b6-a9eb-07a8e18ca62f",
    "modifier_name" : "李四",
    "create_time" : "2021-01-30T23:00:00Z+0800",
    "update_time" : "2021-01-30T23:00:00Z+0800"
  } ]
}

SDK代码示例

SDK代码示例如下。

查询字段列表,偏移量为10,查询3条

 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.secmaster.v2.region.SecMasterRegion;
import com.huaweicloud.sdk.secmaster.v2.*;
import com.huaweicloud.sdk.secmaster.v2.model.*;


public class ListDataclassFieldsSolution {

    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);

        SecMasterClient client = SecMasterClient.newBuilder()
                .withCredential(auth)
                .withRegion(SecMasterRegion.valueOf("<YOUR REGION>"))
                .build();
        ListDataclassFieldsRequest request = new ListDataclassFieldsRequest();
        request.withOffset(<offset>);
        request.withLimit(<limit>);
        request.withName("<name>");
        request.withIsBuiltIn(<is_built_in>);
        request.withFieldCategory("<field_category>");
        request.withMapping(<mapping>);
        try {
            ListDataclassFieldsResponse response = client.listDataclassFields(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());
        }
    }
}

查询字段列表,偏移量为10,查询3条

 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
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdksecmaster.v2.region.secmaster_region import SecMasterRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdksecmaster.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 = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = BasicCredentials(ak, sk)

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

    try:
        request = ListDataclassFieldsRequest()
        request.offset = <offset>
        request.limit = <limit>
        request.name = "<name>"
        request.is_built_in = <IsBuiltIn>
        request.field_category = "<field_category>"
        request.mapping = <Mapping>
        response = client.list_dataclass_fields(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

查询字段列表,偏移量为10,查询3条

 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"
    secmaster "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/v2/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/secmaster/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 := secmaster.NewSecMasterClient(
        secmaster.SecMasterClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListDataclassFieldsRequest{}
	offsetRequest:= float32(<offset>)
	request.Offset = &offsetRequest
	limitRequest:= float32(<limit>)
	request.Limit = &limitRequest
	nameRequest:= "<name>"
	request.Name = &nameRequest
	isBuiltInRequest:= <is_built_in>
	request.IsBuiltIn = &isBuiltInRequest
	fieldCategoryRequest:= "<field_category>"
	request.FieldCategory = &fieldCategoryRequest
	mappingRequest:= <mapping>
	request.Mapping = &mappingRequest
	response, err := client.ListDataclassFields(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

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

状态码

状态码

描述

200

请求成功

400

查询数据类列表错误返回body体

错误码

请参见错误码

相关文档