Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Computação
Elastic Cloud Server
Bare Metal Server
Auto Scaling
Image Management Service
Dedicated Host
FunctionGraph
Cloud Phone Host
Huawei Cloud EulerOS
Redes
Virtual Private Cloud
Elastic IP
Elastic Load Balance
NAT Gateway
Direct Connect
Virtual Private Network
VPC Endpoint
Cloud Connect
Enterprise Router
Enterprise Switch
Global Accelerator
Gerenciamento e governança
Cloud Eye
Identity and Access Management
Cloud Trace Service
Resource Formation Service
Tag Management Service
Log Tank Service
Config
Resource Access Manager
Simple Message Notification
Application Performance Management
Application Operations Management
Organizations
Optimization Advisor
Cloud Operations Center
Resource Governance Center
Migração
Server Migration Service
Object Storage Migration Service
Cloud Data Migration
Migration Center
Cloud Ecosystem
KooGallery
Partner Center
User Support
My Account
Billing Center
Cost Center
Resource Center
Enterprise Management
Service Tickets
HUAWEI CLOUD (International) FAQs
ICP Filing
Support Plans
My Credentials
Customer Operation Capabilities
Partner Support Plans
Professional Services
Análises
MapReduce Service
Data Lake Insight
CloudTable Service
Cloud Search Service
Data Lake Visualization
Data Ingestion Service
GaussDB(DWS)
DataArts Studio
IoT
IoT Device Access
Outros
Product Pricing Details
System Permissions
Console Quick Start
Common FAQs
Instructions for Associating with a HUAWEI CLOUD Partner
Message Center
Segurança e conformidade
Security Technologies and Applications
Web Application Firewall
Host Security Service
Cloud Firewall
SecMaster
Anti-DDoS Service
Data Encryption Workshop
Database Security Service
Cloud Bastion Host
Data Security Center
Cloud Certificate Manager
Blockchain
Blockchain Service
Serviços de mídia
Media Processing Center
Video On Demand
Live
SparkRTC
Armazenamento
Object Storage Service
Elastic Volume Service
Cloud Backup and Recovery
Cloud Server Backup Service
Storage Disaster Recovery Service
Scalable File Service
Volume Backup Service
Data Express Service
Dedicated Distributed Storage Service
Containers
Cloud Container Engine
SoftWare Repository for Container
Application Service Mesh
Ubiquitous Cloud Native Service
Cloud Container Instance
Bancos de dados
Relational Database Service
Document Database Service
Data Admin Service
Data Replication Service
GeminiDB
GaussDB
Distributed Database Middleware
Database and Application Migration UGO
TaurusDB
Middleware
Distributed Cache Service
API Gateway
Distributed Message Service for Kafka
Distributed Message Service for RabbitMQ
Distributed Message Service for RocketMQ
Cloud Service Engine
EventGrid
Dedicated Cloud
Dedicated Computing Cluster
Aplicações de negócios
ROMA Connect
Message & SMS
Domain Name Service
Edge Data Center Management
Meeting
AI
Face Recognition Service
Graph Engine Service
Content Moderation
Image Recognition
Data Lake Factory
Optical Character Recognition
ModelArts
ImageSearch
Conversational Bot Service
Speech Interaction Service
Huawei HiLens
Developer Tools
SDK Developer Guide
API Request Signing Guide
Terraform
Koo Command Line Interface
Distribuição de conteúdo e computação de borda
Content Delivery Network
Intelligent EdgeFabric
CloudPond
Soluções
SAP Cloud
High Performance Computing
Serviços para desenvolvedore
ServiceStage
CodeArts
CodeArts PerfTest
CodeArts Req
CodeArts Pipeline
CodeArts Build
CodeArts Deploy
CodeArts Artifact
CodeArts TestPlan
CodeArts Check
Cloud Application Engine
MacroVerse aPaaS
KooPhone
KooDrive
Central de ajuda/ Elastic Volume Service/ Referência de API/ API/ Gerenciamento de tags/ Consulta de detalhes de discos EVS por tag

Consulta de detalhes de discos EVS por tag

Atualizado em 2024-09-25 GMT+08:00

Função

Esta API é usada para consultar os detalhes dos discos EVS por tag.

Método de chamada

Para obter detalhes, consulte Chamada de APIs.

URI

POST /v2/{project_id}/cloudvolumes/resource_instances/action

Tabela 1 Parâmetros de caminho

Parâmetro

Obrigatório

Tipo

Descrição

project_id

Sim

String

O ID do projeto.

Para obter detalhes sobre como obter o ID de projeto, consulte Obtenção de um ID de projeto.

Parâmetros de solicitação

Tabela 2 Parâmetros de cabeçalho de solicitação

Parâmetro

Obrigatório

Tipo

Descrição

X-Auth-Token

Sim

String

O token do usuário. Ele pode ser obtido chamando a API do IAM usada para obter um token de usuário. O valor de X-Subject-Token no cabeçalho da resposta é o token do usuário.

Tabela 3 Parâmetros do corpo da solicitação

Parâmetro

Obrigatório

Tipo

Descrição

action

Sim

String

O identificador da operação.

Para consultar os detalhes dos discos por tag, use filter.

Padrão: filter

Valores de enumeração:

  • filter

limit

Não

Integer

O número de registros de consulta. O valor varia de 1 a 1000 e o valor padrão é 1000. O valor retornado não pode exceder esse limite.

Mínimo: 1

Máximo: 1000

Padrão: 1000

matches

Não

Array of Match objects

Os critérios de pesquisa suportados pelos discos. As chaves de tag em uma lista de tags devem ser exclusivas.

offset

Não

Integer

A localização do índice. O valor mínimo é 0, que também é o valor padrão. O primeiro registro no resultado da consulta é o registro "offset+1" que atende aos critérios da consulta. Por exemplo, há um total de 30 discos EVS. Se você definir offset para 11 e limit para 10, a consulta começará a partir do décimo segundo disco e um máximo de 10 discos poderão ser consultados por vez.

Padrão: 0

tags

Sim

Array of TagsForListVolumes objects

Os pares chave e valor de tags. Uma lista de tags pode conter no máximo 10 chaves. As chaves de tag em uma lista de tags devem ser exclusivas. Quando várias chaves são especificadas em uma lista de tags, somente os discos com todas as chaves especificadas são consultados.

Tabela 4 Match

Parâmetro

Obrigatório

Tipo

Descrição

key

Sim

String

A chave. As opções são as seguintes: resource_name service_type

Valores de enumeração:

  • resource_name

  • service_type

value

Sim

String

O valor, que pode conter no máximo 255 caracteres. Se resource_name for especificado para key, o valor da tag usa uma correspondência difusa.

Tabela 5 TagsForListVolumes

Parâmetro

Obrigatório

Tipo

Descrição

key

Sim

String

A chave de tag.

values

Sim

Array of strings

O valor da tag.

Uma lista de tags pode conter no máximo 10 valores.

Os valores de tag em uma lista de tags devem ser exclusivos.

Se a lista de valores de tag estiver vazia, os discos que contêm qualquer chave poderão ser consultados. Quando há vários valores e os principais requisitos são atendidos, os discos que têm qualquer um dos valores especificados são consultados.

Parâmetros de resposta

Código de status: 200

Tabela 6 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

total_count

Integer

O número de discos que atendem ao critério de consulta.

resources

Array of Resource objects

A lista de discos que atendem ao critério de consulta.

Tabela 7 Resource

Parâmetro

Tipo

Descrição

resource_id

String

O ID do recurso.

resource_name

String

O nome do recurso.

resource_detail

VolumeDetailForTag object

Os detalhes do recurso.

tags

Array of Map<String,String> objects

A lista de tags.

Tabela 8 VolumeDetailForTag

Parâmetro

Tipo

Descrição

id

String

O ID do disco.

links

Array of Link objects

O URI do disco.

name

String

O nome do disco.

status

String

O status do disco. Para obter detalhes, consulte Status do disco EVS.

attachments

Array of Attachment objects

As informações de anexo do disco.

availability_zone

String

A AZ à qual o disco pertence.

os-vol-host-attr:host

String

O campo reservado.

source_volid

String

O ID do disco de origem. Este parâmetro tem um valor se o disco for criado a partir de um disco de origem.

Este campo não é suportado no momento.

snapshot_id

String

O ID do snapshot. Este parâmetro tem um valor se o disco for criado a partir de um snapshot.

description

String

A descrição do disco.

created_at

String

A hora em que o disco foi criado. Formato da hora: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX

os-vol-tenant-attr:tenant_id

String

O ID do locatário ao qual o disco pertence. O ID do locatário é o mesmo que o ID do projeto.

volume_image_metadata

Map<String,Object>

Os metadados da imagem de disco.

NOTA:

Para obter detalhes sobre o campo volume_image_metadata, consulte Consulta de detalhes da imagem (API OpenStack nativo).

volume_type

String

O tipo de disco. O valor pode ser SSD, SAS ou SATA.

  • SSD: o tipo de I/O ultra-alta

  • SAS: o tipo de I/O alta

  • SATA: o tipo de I/O comum

size

Integer

O tamanho do disco, em GiB.

consistencygroup_id

String

O campo reservado.

bootable

String

Se o disco é inicializável. true: o disco é inicializável. false: o disco não é inicializável.

metadata

VolumeMetadata object

Os metadados do disco.

updated_at

String

A hora em que o disco foi atualizado. Formato da hora: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX

encrypted

Boolean

Este campo não é suportado no momento.

replication_status

String

O campo reservado.

os-volume-replication:extended_status

String

O campo reservado.

os-vol-mig-status-attr:migstat

String

O campo reservado.

os-vol-mig-status-attr:name_id

String

O campo reservado.

shareable

Boolean

Se o disco é compartilhável. O valor pode ser true (compartilhável) ou false (não compartilhável). Este campo foi preterido. Use multiattach.

user_id

String

O campo reservado.

service_type

String

O tipo de serviço. Os serviços suportados são EVS, DSS e DESS.

multiattach

Boolean

Se o disco é compartilhável.

dedicated_storage_id

String

O ID do pool de armazenamento dedicado que aloja o disco.

dedicated_storage_name

String

O nome do pool de armazenamento dedicado que aloja o disco.

tags

Map<String,String>

As tags do disco. Este campo tem valores se o disco tiver tags. Ou, é deixado vazio.

wwn

String

O identificador exclusivo usado ao anexar o disco.

enterprise_project_id

String

O ID do projeto empresarial ao qual o disco foi adicionado.

Para obter mais detalhes sobre projetos empresariais e como obter IDs de projeto empresarial, consulte Visão geral.

Tabela 10 Attachment

Parâmetro

Tipo

Descrição

attached_at

String

A hora em que o disco foi anexado.

Formato da hora: UTC AAAA-MM-DDTHH:MM:SS.XXXXXX

attachment_id

String

O ID do anexo.

device

String

O nome do dispositivo.

host_name

String

O nome do host físico que hospeda o servidor de nuvem ao qual o disco está anexado.

id

String

O ID do disco anexado.

server_id

String

O ID do servidor ao qual o disco está anexado.

volume_id

String

O ID do disco.

Tabela 11 VolumeMetadata

Parâmetro

Tipo

Descrição

__system__cmkid

String

O ID da CMK de encriptação em metadata. Este parâmetro é utilizado em conjunto com __system__encrypted para encriptação. O comprimento do cmkid é fixado em 36 bytes.

Para obter detalhes sobre como obter o ID de chave, consulte Consulta da lista de chaves.

__system__encrypted

String

O campo de encriptação nos metadata. O valor pode ser 0 (não criptografado) ou 1 (criptografado). Se esse parâmetro não for especificado, o atributo de encriptação do disco será o mesmo da fonte de dados. Se o disco não for criado a partir de uma fonte de dados, o disco não será criptografado por padrão.

full_clone

String

O método de criação quando o disco é criado a partir de um snapshot.

  • 0: clone vinculado

  • 1: clone completo

hw:passthrough

String

  • Se esse parâmetro for definido como true, o tipo de dispositivo de disco será SCSI, o que permite que os OSs do ECS acessem diretamente a mídia de armazenamento subjacente. Os comandos de reserva SCSI são suportados.

  • Se esse parâmetro for definido como false, o tipo de dispositivo de disco será VBD, que também é o tipo padrão. O VBD suporta apenas comandos simples de leitura/gravação de SCSI.

  • Se esse parâmetro não for especificado, o tipo de dispositivo de disco será VBD.

orderID

String

O parâmetro que descreve o modo de cobrança do disco em metadata. Se esse parâmetro tiver um valor, o disco será cobrado anualmente/mensalmente. Caso contrário, o disco é cobrado em uma base de pagamento por uso.

Código de status: 400

Tabela 12 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error

Error object

A mensagem de erro retornada se ocorrer um erro. Para obter detalhes, consulte Parâmetros no campo error.

Tabela 13 Error

Parâmetro

Tipo

Descrição

code

String

O código de erro retornado se ocorrer um erro. Para os códigos de erro e seus significados, consulte Códigos de erro.

message

String

A mensagem de erro retornada se ocorrer um erro.

Exemplo de solicitações

Consulta de detalhes do disco shared01 usando as tags key_string,value_string e key_string02,value_string02 (A consulta começa no décimo registro. O número de registros retornados não pode exceder 100.)

POST https://{endpoint}/v2/{project_id}/cloudvolumes/resource_instances/action

{
  "offset" : 9,
  "limit" : 100,
  "action" : "filter",
  "tags" : [ {
    "key" : "key_string",
    "values" : [ "value_string" ]
  }, {
    "key" : "key_string02",
    "values" : [ "value_string02" ]
  } ],
  "matches" : [ {
    "key" : "resource_name",
    "value" : "shared01"
  }, {
    "key" : "service_type",
    "value" : "EVS"
  } ]
}

Exemplo de respostas

Código de status: 200

As informações do disco são retornadas.

{
  "total_count" : 1,
  "resources" : [ {
    "resource_name" : "resource1",
    "resource_detail" : {
      "attachments" : [ {
        "server_id" : "2080869e-ba46-4ea5-b45e-3191ac0f1d54",
        "attachment_id" : "1335f039-7a42-4d1e-be49-ac584db0ba0b",
        "attached_at" : "2019-08-06T07:00:21.842812",
        "volume_id" : "7fa6b592-ac75-460d-a28a-bb17429d1eb2",
        "device" : "/dev/vda",
        "id" : "7fa6b592-ac75-460d-a28a-bb17429d1eb2"
      } ],
      "links" : [ {
        "href" : "https://volume.Region.dc1.domainname.com/v2/051375756c80d5eb2ff0c014498645fb/volumes/7fa6b592-ac75-460d-a28a-bb17429d1eb2",
        "rel" : "self"
      }, {
        "href" : "https://volume.Region.dc1.domainname.com/051375756c80d5eb2ff0c014498645fb/volumes/7fa6b592-ac75-460d-a28a-bb17429d1eb2",
        "rel" : "bookmark"
      } ],
      "availability_zone" : "kvmxen.dc1",
      "os-vol-host-attr:host" : "az21.dc1#2",
      "enterprise_project_id" : "0",
      "updated_at" : "2019-08-09T06:19:35.874737",
      "replication_status" : "disabled",
      "id" : "7fa6b592-ac75-460d-a28a-bb17429d1eb2",
      "size" : 40,
      "user_id" : "75f26e17348643bfb7718578b04635c2",
      "os-vol-tenant-attr:tenant_id" : "051375756c80d5eb2ff0c014498645fb",
      "service_type" : "EVS",
      "metadata" : { },
      "status" : "in-use",
      "volume_image_metadata" : {
        "size" : "0",
        "__quick_start" : "False",
        "container_format" : "bare",
        "min_ram" : "0",
        "image_name" : "test-hua-centos7.3-0725",
        "image_id" : "c6c153a6-dde8-4bac-8e40-3d7619436934",
        "__os_type" : "Linux",
        "min_disk" : "20",
        "__support_kvm" : "true",
        "virtual_env_type" : "FusionCompute",
        "__description" : "",
        "__os_version" : "CentOS 7.3 64bit",
        "__os_bit" : "64",
        "__image_source_type" : "uds",
        "__support_xen" : "true",
        "file_format" : "zvhd2",
        "checksum" : "d41d8cd98f00b204e9800998ecf8427e",
        "__imagetype" : "gold",
        "disk_format" : "zvhd2",
        "__image_cache_type" : "Not_Cache",
        "__isregistered" : "true",
        "__image_location" : "192.149.46.200:5443:pcsimssouthchina:c6c153a6-dde8-4bac-8e40-3d7619436934",
        "__image_size" : "911269888",
        "__platform" : "CentOS"
      },
      "description" : "",
      "multiattach" : false,
      "name" : "resource1",
      "bootable" : "true",
      "created_at" : "2019-08-06T06:59:03.056682",
      "volume_type" : "SAS",
      "shareable" : false
    },
    "tags" : [ {
      "key" : "key1",
      "value" : "value1"
    }, {
      "key" : "key1",
      "value" : "value2"
    } ],
    "resource_id" : "7fa6b592-ac75-460d-a28a-bb17429d1eb2"
  } ]
}

Código de status: 400

Bad Request

{
  "error" : {
    "message" : "XXXX",
    "code" : "XXX"
  }
}

Código de amostra do SDK

O código de amostra do SDK é o seguinte.

Java

Consulta de detalhes do disco shared01 usando as tags key_string,value_string e key_string02,value_string02 (A consulta começa no décimo registro. O número de registros retornados não pode exceder 100.)

 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
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.evs.v2.region.EvsRegion;
import com.huaweicloud.sdk.evs.v2.*;
import com.huaweicloud.sdk.evs.v2.model.*;

import java.util.List;
import java.util.ArrayList;

public class ListVolumesByTagsSolution {

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

        EvsClient client = EvsClient.newBuilder()
                .withCredential(auth)
                .withRegion(EvsRegion.valueOf("<YOUR REGION>"))
                .build();
        ListVolumesByTagsRequest request = new ListVolumesByTagsRequest();
        ListVolumesByTagsRequestBody body = new ListVolumesByTagsRequestBody();
        List<String> listTagsValues = new ArrayList<>();
        listTagsValues.add("value_string02");
        List<String> listTagsValues1 = new ArrayList<>();
        listTagsValues1.add("value_string");
        List<TagsForListVolumes> listbodyTags = new ArrayList<>();
        listbodyTags.add(
            new TagsForListVolumes()
                .withKey("key_string")
                .withValues(listTagsValues1)
        );
        listbodyTags.add(
            new TagsForListVolumes()
                .withKey("key_string02")
                .withValues(listTagsValues)
        );
        List<Match> listbodyMatches = new ArrayList<>();
        listbodyMatches.add(
            new Match()
                .withKey(Match.KeyEnum.fromValue("resource_name"))
                .withValue("shared01")
        );
        listbodyMatches.add(
            new Match()
                .withKey(Match.KeyEnum.fromValue("service_type"))
                .withValue("EVS")
        );
        body.withTags(listbodyTags);
        body.withOffset(9);
        body.withMatches(listbodyMatches);
        body.withLimit(100);
        body.withAction(ListVolumesByTagsRequestBody.ActionEnum.fromValue("filter"));
        request.withBody(body);
        try {
            ListVolumesByTagsResponse response = client.listVolumesByTags(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());
        }
    }
}

Python

Consulta de detalhes do disco shared01 usando as tags key_string,value_string e key_string02,value_string02 (A consulta começa no décimo registro. O número de registros retornados não pode exceder 100.)

 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
52
53
54
55
56
57
58
59
60
61
62
# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkevs.v2.region.evs_region import EvsRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkevs.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 = EvsClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(EvsRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListVolumesByTagsRequest()
        listValuesTags = [
            "value_string02"
        ]
        listValuesTags1 = [
            "value_string"
        ]
        listTagsbody = [
            TagsForListVolumes(
                key="key_string",
                values=listValuesTags1
            ),
            TagsForListVolumes(
                key="key_string02",
                values=listValuesTags
            )
        ]
        listMatchesbody = [
            Match(
                key="resource_name",
                value="shared01"
            ),
            Match(
                key="service_type",
                value="EVS"
            )
        ]
        request.body = ListVolumesByTagsRequestBody(
            tags=listTagsbody,
            offset=9,
            matches=listMatchesbody,
            limit=100,
            action="filter"
        )
        response = client.list_volumes_by_tags(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

Consulta de detalhes do disco shared01 usando as tags key_string,value_string e key_string02,value_string02 (A consulta começa no décimo registro. O número de registros retornados não pode exceder 100.)

 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    evs "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/evs/v2"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/evs/v2/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/evs/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 := evs.NewEvsClient(
        evs.EvsClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListVolumesByTagsRequest{}
	var listValuesTags = []string{
        "value_string02",
    }
	var listValuesTags1 = []string{
        "value_string",
    }
	var listTagsbody = []model.TagsForListVolumes{
        {
            Key: "key_string",
            Values: listValuesTags1,
        },
        {
            Key: "key_string02",
            Values: listValuesTags,
        },
    }
	var listMatchesbody = []model.Match{
        {
            Key: model.GetMatchKeyEnum().RESOURCE_NAME,
            Value: "shared01",
        },
        {
            Key: model.GetMatchKeyEnum().SERVICE_TYPE,
            Value: "EVS",
        },
    }
	offsetListVolumesByTagsRequestBody:= int32(9)
	limitListVolumesByTagsRequestBody:= int32(100)
	request.Body = &model.ListVolumesByTagsRequestBody{
		Tags: listTagsbody,
		Offset: &offsetListVolumesByTagsRequestBody,
		Matches: &listMatchesbody,
		Limit: &limitListVolumesByTagsRequestBody,
		Action: model.GetListVolumesByTagsRequestBodyActionEnum().FILTER,
	}
	response, err := client.ListVolumesByTags(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

Mais

Para obter o código de amostra do SDK de mais linguagens de programação, consulte a guia Código de amostra no API Explorer. O código de amostra do SDK pode ser gerado automaticamente.

Códigos de status

Código de status

Descrição

200

As informações do disco são retornadas.

400

Bad Request

Códigos de erro

Consulte Códigos de erro.

Usamos cookies para aprimorar nosso site e sua experiência. Ao continuar a navegar em nosso site, você aceita nossa política de cookies. Saiba mais

Feedback

Feedback

Feedback

0/500

Conteúdo selecionado

Envie o conteúdo selecionado com o feedback