Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ VPC Endpoint/ Referencia de la API/ API/ Etiquetas/ Adición o eliminación de etiquetas de recursos por lotes
Actualización más reciente 2024-09-14 GMT+08:00

Adición o eliminación de etiquetas de recursos por lotes

Función

Esta API se utiliza para agregar o eliminar etiquetas por lotes hacia y desde un servicio de punto de conexión de VPC o punto de conexión de VPC especificado.

  • Un recurso puede tener hasta 10 etiquetas.

Método de invocación

Para obtener más información, consulte Invocación a las API.

URI

POST /v1/{project_id}/{resource_type}/{resource_id}/tags/action

Tabla 1 Parámetros de enrutamiento

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID del proyecto.

Mínimo: 1

Máximo: 64

resource_type

String

Especifica el tipo de recurso. El tipo es endpoint_service o punto de conexión.

resource_id

String

El ID del recurso, el ID del servicio de punto de conexión o el ID del punto de conexión.

Mínimo: 1

Máximo: 64

Parámetros de solicitud

Tabla 2 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Especifica el token de usuario. Se puede obtener invocando a la API de IAM. El valor de X-Subject-Token en el encabezado de respuesta es el token de usuario.

Content-Type

No

String

Especifica el tipo MIME del cuerpo de la solicitud. Se recomienda el valor application/json. Para las API utilizadas para cargar objetos o imágenes, el tipo MIME varía en función del tipo de flujo.

Valor predeterminado: application/json

Tabla 3 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

tags

No

Matriz de objetos de ResourceTag

Especifica la lista de etiquetas consultadas. Si no hay ninguna etiqueta coincidente, se devuelve una matriz vacía.

action

String

Especifica la operación que se va a realizar, que solo puede ser

  • create

  • delete

Tabla 4 ResourceTag

Parámetro

Obligatorio

Tipo

Descripción

key

String

Especifica la clave de etiqueta. Una clave puede contener hasta 36 caracteres Unicode. La clave debe cumplir con los requisitos de configuración de claves de etiquetas.

Mínimo: 1

Máximo: 36

value

No

String

Especifica el valor de etiqueta. value es obligatorio cuando action se establece en create. Cada valor contiene un máximo de 43 caracteres de Unicode. Si se especifica value, las etiquetas se eliminan por clave y valor. Si no se especifica value, las etiquetas se eliminan por clave. El valor de la etiqueta debe cumplir con las especificaciones del juego de caracteres de la etiqueta.

Mínimo: 1

Máximo: 43

Parámetros de respuesta

No hay

Ejemplo de solicitudes

  • Adición de etiquetas de recurso

    POST https://{endpoint}/v1/{project_id}/endpoint_service/{resource_id}/tags/action
    
    {
      "action" : "create",
      "tags" : [ {
        "key" : "key1",
        "value" : "value1"
      }, {
        "key" : "key",
        "value" : "value3"
      } ]
    }
  • Deleting resource tags

    POST https://{endpoint}/v1/{project_id}/endpoint/{resource_id}/tags/action
    
    {
      "action" : "delete",
      "tags" : [ {
        "key" : "key1"
      }, {
        "key" : "key2",
        "value" : "value3"
      } ]
    }

Ejemplo de respuestas

No hay

Ejemplo de código del SDK

El ejemplo de código del SDK es el siguiente.

Java

  • Adición de etiquetas de recurso

     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
    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.vpcep.v1.region.VpcepRegion;
    import com.huaweicloud.sdk.vpcep.v1.*;
    import com.huaweicloud.sdk.vpcep.v1.model.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class BatchAddOrRemoveResourceInstanceSolution {
    
        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);
    
            VpcepClient client = VpcepClient.newBuilder()
                    .withCredential(auth)
                    .withRegion(VpcepRegion.valueOf("cn-north-4"))
                    .build();
            BatchAddOrRemoveResourceInstanceRequest request = new BatchAddOrRemoveResourceInstanceRequest();
            BatchAddOrRemoveResourceInstanceBody body = new BatchAddOrRemoveResourceInstanceBody();
            List<ResourceTag> listbodyTags = new ArrayList<>();
            listbodyTags.add(
                new ResourceTag()
                    .withKey("key1")
                    .withValue("value1")
            );
            listbodyTags.add(
                new ResourceTag()
                    .withKey("key")
                    .withValue("value3")
            );
            body.withAction("create");
            body.withTags(listbodyTags);
            request.withBody(body);
            try {
                BatchAddOrRemoveResourceInstanceResponse response = client.batchAddOrRemoveResourceInstance(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());
            }
        }
    }
    
  • Deleting resource tags

     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
    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.vpcep.v1.region.VpcepRegion;
    import com.huaweicloud.sdk.vpcep.v1.*;
    import com.huaweicloud.sdk.vpcep.v1.model.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class BatchAddOrRemoveResourceInstanceSolution {
    
        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);
    
            VpcepClient client = VpcepClient.newBuilder()
                    .withCredential(auth)
                    .withRegion(VpcepRegion.valueOf("cn-north-4"))
                    .build();
            BatchAddOrRemoveResourceInstanceRequest request = new BatchAddOrRemoveResourceInstanceRequest();
            BatchAddOrRemoveResourceInstanceBody body = new BatchAddOrRemoveResourceInstanceBody();
            List<ResourceTag> listbodyTags = new ArrayList<>();
            listbodyTags.add(
                new ResourceTag()
                    .withKey("key1")
            );
            listbodyTags.add(
                new ResourceTag()
                    .withKey("key2")
                    .withValue("value3")
            );
            body.withAction("delete");
            body.withTags(listbodyTags);
            request.withBody(body);
            try {
                BatchAddOrRemoveResourceInstanceResponse response = client.batchAddOrRemoveResourceInstance(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

  • Adición de etiquetas de recurso

     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
    # coding: utf-8
    
    from huaweicloudsdkcore.auth.credentials import BasicCredentials
    from huaweicloudsdkvpcep.v1.region.vpcep_region import VpcepRegion
    from huaweicloudsdkcore.exceptions import exceptions
    from huaweicloudsdkvpcep.v1 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.getenv("CLOUD_SDK_AK")
        sk = os.getenv("CLOUD_SDK_SK")
    
        credentials = BasicCredentials(ak, sk) \
    
        client = VpcepClient.new_builder() \
            .with_credentials(credentials) \
            .with_region(VpcepRegion.value_of("cn-north-4")) \
            .build()
    
        try:
            request = BatchAddOrRemoveResourceInstanceRequest()
            listTagsbody = [
                ResourceTag(
                    key="key1",
                    value="value1"
                ),
                ResourceTag(
                    key="key",
                    value="value3"
                )
            ]
            request.body = BatchAddOrRemoveResourceInstanceBody(
                action="create",
                tags=listTagsbody
            )
            response = client.batch_add_or_remove_resource_instance(request)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
    
  • Deleting resource tags

     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
    # coding: utf-8
    
    from huaweicloudsdkcore.auth.credentials import BasicCredentials
    from huaweicloudsdkvpcep.v1.region.vpcep_region import VpcepRegion
    from huaweicloudsdkcore.exceptions import exceptions
    from huaweicloudsdkvpcep.v1 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.getenv("CLOUD_SDK_AK")
        sk = os.getenv("CLOUD_SDK_SK")
    
        credentials = BasicCredentials(ak, sk) \
    
        client = VpcepClient.new_builder() \
            .with_credentials(credentials) \
            .with_region(VpcepRegion.value_of("cn-north-4")) \
            .build()
    
        try:
            request = BatchAddOrRemoveResourceInstanceRequest()
            listTagsbody = [
                ResourceTag(
                    key="key1"
                ),
                ResourceTag(
                    key="key2",
                    value="value3"
                )
            ]
            request.body = BatchAddOrRemoveResourceInstanceBody(
                action="delete",
                tags=listTagsbody
            )
            response = client.batch_add_or_remove_resource_instance(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

  • Adición de etiquetas de recurso

     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 main
    
    import (
    	"fmt"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
        vpcep "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1/model"
        region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1/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 := vpcep.NewVpcepClient(
            vpcep.VpcepClientBuilder().
                WithRegion(region.ValueOf("cn-north-4")).
                WithCredential(auth).
                Build())
    
        request := &model.BatchAddOrRemoveResourceInstanceRequest{}
    	valueTags:= "value1"
    	valueTags1:= "value3"
    	var listTagsbody = []model.ResourceTag{
            {
                Key: "key1",
                Value: &valueTags,
            },
            {
                Key: "key",
                Value: &valueTags1,
            },
        }
    	request.Body = &model.BatchAddOrRemoveResourceInstanceBody{
    		Action: "create",
    		Tags: &listTagsbody,
    	}
    	response, err := client.BatchAddOrRemoveResourceInstance(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
    
  • Deleting resource tags

     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
    package main
    
    import (
    	"fmt"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
        vpcep "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1/model"
        region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/vpcep/v1/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 := vpcep.NewVpcepClient(
            vpcep.VpcepClientBuilder().
                WithRegion(region.ValueOf("cn-north-4")).
                WithCredential(auth).
                Build())
    
        request := &model.BatchAddOrRemoveResourceInstanceRequest{}
    	valueTags:= "value3"
    	var listTagsbody = []model.ResourceTag{
            {
                Key: "key1",
            },
            {
                Key: "key2",
                Value: &valueTags,
            },
        }
    	request.Body = &model.BatchAddOrRemoveResourceInstanceBody{
    		Action: "delete",
    		Tags: &listTagsbody,
    	}
    	response, err := client.BatchAddOrRemoveResourceInstance(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
    

Otro más

Para obtener un ejemplo de código del SDK de más lenguajes de programación, consulta la ficha Ejemplo de código en API Explorer. El ejemplo de código del SDK se puede generar automáticamente.

Códigos de estado

Código de estado

Descripción

204

El servidor procesó correctamente la solicitud.

Códigos de error

Consulte Códigos de error.