Consulta de los gateway virtuales
Función
Esta API se utiliza para consultar los gateway virtuales.
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
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
project_id |
Sí |
String |
Especifica el ID del proyecto. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
limit |
No |
Integer |
Especifica el número de registros devueltos en cada página. Rango de valores: 1 a 2000 Mínimo: 1 Máximo: 2000 Predeterminado: 2000 |
marker |
No |
String |
Especifica el ID del último registro de recursos de la página anterior. Si este parámetro se deja en blanco, se consulta la primera página. Este parámetro debe usarse junto con limit. Mínimo: 0 Máximo: 36 |
fields |
No |
Array |
Especifica la lista de campos que se mostrarán. Longitud del arreglo: 1 - 5 |
sort_dir |
No |
Array |
Especifica el orden de clasificación de los resultados devueltos, que puede ser asc (orden ascendente) o desc (orden descendente). El valor predeterminado es asc. |
sort_key |
No |
String |
Especifica el campo de la ordenación. Predeterminado: id Mínimo: 0 Máximo: 36 |
id |
No |
Array |
Especifica el ID de recurso por el que se filtran las instancias. Longitud del arreglo: 1 - 5 |
enterprise_project_id |
No |
Array |
Filtra instancias de recursos por ID de proyecto de empresa. Longitud del arreglo: 1 - 10 |
vpc_id |
No |
Array |
Especifica el ID de VPC por el que se filtran los gateway virtuales. |
Parámetros de solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
X-Auth-Token |
Sí |
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
Parámetro |
Tipo |
Descripción |
---|---|---|
request_id |
String |
Especifica el ID de la solicitud. |
virtual_gateways |
Array of VirtualGateway objects |
Especifica los parámetros para crear un gateway virtual. |
page_info |
PageInfo object |
Especifica la información de consulta de paginación. |
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 |
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 |
Parámetro |
Tipo |
Descripción |
---|---|---|
previous_marker |
String |
Especifica el marcador de la página anterior. El valor es el UUID del recurso. Mínimo: 0 Máximo: 36 |
current_count |
Integer |
Especifica el número de recursos de la lista actual. Mínimo: 0 Máximo: 2000 |
next_marker |
String |
Especifica el marcador de la página siguiente. El valor es el UUID del recurso. Si el valor está vacío, el recurso se encuentra en la última página. Mínimo: 0 Máximo: 36 |
Ejemplo de las solicitudes
Consulta de la lista del gateway virtual
GET https://{dc_endpoint}/v3/0605768a3300d5762f82c01180692873/dcaas/virtual-gateways
Ejemplo de las respuestas
Código de estado: 200
Aceptar
- Se consulta la lista de gateway virtuales asociadas con las VPC.
{ "virtual_gateways" : [ { "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 49 50 51 52 53 54 55 |
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 ListVirtualGatewaysSolution { 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(); ListVirtualGatewaysRequest request = new ListVirtualGatewaysRequest(); request.withVpcId(); request.withLimit(<limit>); request.withMarker("<marker>"); request.withFields(); request.withSortDir(); request.withSortKey("<sort_key>"); request.withId(); request.withEnterpriseProjectId(); try { ListVirtualGatewaysResponse response = client.listVirtualGateways(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 31 32 33 34 35 36 37 |
# 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 = ListVirtualGatewaysRequest() request.vpc_id = request.limit = <limit> request.marker = "<marker>" request.fields = request.sort_dir = request.sort_key = "<sort_key>" request.id = request.enterprise_project_id = response = client.list_virtual_gateways(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 36 37 38 39 40 41 |
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.ListVirtualGatewaysRequest{} limitRequest:= int32(<limit>) request.Limit = &limitRequest markerRequest:= "<marker>" request.Marker = &markerRequest sortKeyRequest:= "<sort_key>" request.SortKey = &sortKeyRequest response, err := client.ListVirtualGateways(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.