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/ Direct Connect/ Referencia de la API/ Las API/ Gateway virtual/ Consulta de detalles sobre un gateway virtual
Actualización más reciente 2024-09-14 GMT+08:00

Consulta de detalles sobre un gateway virtual

Función

Esta API se utiliza para consultar detalles sobre un gateway virtual especificado.

Método de invocación

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

URI

GET /v3/{project_id}/dcaas/virtual-gateways/{virtual_gateway_id}

Tabla 1 Parámetros de enrutamiento

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

Especifica el ID del proyecto.

virtual_gateway_id

String

Especifica el ID del gateway virtual.

Tabla 2 Parámetros de consulta

Parámetro

Obligatorio

Tipo

Descripción

fields

No

Array

Especifica la lista de campos que se mostrarán.

Longitud del arreglo: 1 - 5

Parámetros de solicitud

Tabla 3 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Especifica el token de usuario. Para obtener el token, consulte la sección "Obtención del token de usuario" en la Referencia de las API de Identity and Access Management. El token es el valor de X-Subject-Token en el encabezado de respuesta.

Mínimo: 0

Máximo: 10240

Parámetros de respuesta

Código de estado: 200

Tabla 4 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

virtual_gateway

VirtualGateway object

Especifica los parámetros para crear un gateway virtual.

request_id

String

Especifica el ID de la solicitud.

Tabla 5 VirtualGateway

Parámetro

Tipo

Descripción

id

String

Especifica el ID del gateway virtual.

vpc_id

String

Especifica el ID de la VPC conectada por el gateway virtual.

tenant_id

String

Especifica el ID del proyecto al que pertenece la instancia.

Mínimo: 32

Máximo: 32

name

String

Especifica el nombre del gateway virtual.

Mínimo: 0

Máximo: 64

description

String

Proporciona la información complementaria sobre el gateway virtual.

Mínimo: 0

Máximo: 128

type

String

Especifica el tipo del gateway virtual. El valor solo puede ser default.

Predeterminado: default

local_ep_group

Array of strings

Especifica las subredes IPv4 conectadas por el gateway virtual, que suele ser los bloques CIDR de una VPC.

local_ep_group_ipv6

Array of strings

Especifica las subredes IPv6 conectadas por el gateway virtual, que suele ser los bloques CIDR de una VPC. Este es un campo reservado.

admin_state_up

Boolean

Especifica el estado administrativo, que puede ser true o false.

Predeterminado: true

status

String

Especifica el estado del gateway virtual, que puede ser ACTIVE, DOWN, BUILD, ERROR, PENDING_CREATE, PENDING_UPDATE o PENDING_DELETE.

bgp_asn

Integer

Especifica el ASN de BGP local del gateway virtual.

Mínimo: 1

Máximo: 4294967295

enterprise_project_id

String

Especifica el ID del proyecto de empresa al que pertenece el gateway virtual.

Mínimo: 36

Máximo: 36

device_id

String

Especifica el ID del dispositivo al que pertenece la interfaz virtual.

redundant_device_id

String

Especifica el ID del dispositivo redundante.

public_border_group

String

Especifica el grupo de bordes públicos de la AZ, que indica si el sitio es un sitio HomeZones.

tags

Array of Tag objects

Especifica las etiquetas.

Longitud del arreglo: 0 - 10

Tabla 6 Etiqueta

Parámetro

Tipo

Descripción

key

String

Especifica la clave de etiqueta. La clave puede contener un máximo de 36 caracteres de Unicode, incluidos letras, dígitos, guiones (-) y guiones bajos (_).

Mínimo: 0

Máximo: 36

value

String

Especifica el valor de etiqueta. El valor puede contener un máximo de 43 caracteres de Unicode, incluidos letras, dígitos, guiones (-), guiones bajos (_), y puntos (.).

Mínimo: 0

Máximo: 43

Ejemplo de las solicitudes

Consulta de un gateway virtual

GET https://{dc_endpoint}/v3/0605768a3300d5762f82c01180692873/dcaas/virtual-gateways/20082c1b-3c99-48d8-8e8c-116af5d7e9f0

Ejemplo de las respuestas

Código de estado: 200

Aceptar

  • Se consultan los detalles del gateway virtual asociado con una VPC.
    {
      "virtual_gateway" : {
        "id" : "20082c1b-3c99-48d8-8e8c-116af5d7e9f0",
        "name" : "vgw-c7b22",
        "description" : "",
        "tenant_id" : "0605768a3300d5762f82c01180692873",
        "vpc_id" : "6592c28e-95d7-4b0a-9f61-004fdf03420c",
        "device_id" : "26.151.63.100",
        "redundant_device_id" : "26.152.128.20",
        "type" : "default",
        "status" : "ACTIVE",
        "admin_state_up" : true,
        "bgp_asn" : 64512,
        "local_ep_group" : [ "192.168.1.0/24" ],
        "enterprise_project_id" : "0",
        "public_border_group" : "center"
      },
      "request_id" : "765f7aaf8f2edd0e719de564ef72e2de"
    }

Ejemplo de código del SDK

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

Java

 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
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.dc.v3.region.DcRegion;
import com.huaweicloud.sdk.dc.v3.*;
import com.huaweicloud.sdk.dc.v3.model.*;

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

public class ShowVirtualGatewaySolution {

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

        DcClient client = DcClient.newBuilder()
                .withCredential(auth)
                .withRegion(DcRegion.valueOf("<YOUR REGION>"))
                .build();
        ShowVirtualGatewayRequest request = new ShowVirtualGatewayRequest();
        request.withFields();
        try {
            ShowVirtualGatewayResponse response = client.showVirtualGateway(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

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

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkdc.v3.region.dc_region import DcRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkdc.v3 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 = DcClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(DcRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ShowVirtualGatewayRequest()
        request.fields = 
        response = client.show_virtual_gateway(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

 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
package main

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

    request := &model.ShowVirtualGatewayRequest{}
	response, err := client.ShowVirtualGateway(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

200

Aceptar

Códigos de error

Consulte Códigos de error.