Implementa una API en una puerta de enlace
En esta página, se describe cómo implementar una API en API Gateway.
Requisitos previos
Antes de implementar una API en API Gateway, asegúrate de hacer lo siguiente:
Prepara tu entorno de desarrollo como se describe en Configura tu entorno de desarrollo.
Crea una API si usas la Google Cloud CLI.
Nota: Cuando usas la Google Cloud consola, este paso se completa cuando se implementa la API, como se describe a continuación.Crea una especificación de OpenAPI que defina tu API.
Crea una configuración de API a partir de la definición de tu API.
Requisitos de ID de Gateway
Muchos de los comandos de gcloud CLI que se muestran a continuación requieren que especifiques el ID de la puerta de enlace, en el formato: GATEWAY_ID. API Gateway aplica los siguientes requisitos para el ID de la puerta de enlace:
- Debe tener una longitud máxima de 49 caracteres.
- Debe contener solo letras en minúscula, números o guiones.
- No debe comenzar con un guion.
- No debe contener un guion bajo.
Define el extremo de la configuración de API implementada
Cuando implementas una configuración de API en una puerta de enlace, API Gateway crea una URL única para la puerta de enlace en el dominio gateway.dev. Luego, tus clientes de API usan una URL con el siguiente formato para acceder a la configuración de API implementada:
https://GATEWAY_ID-HASH.REGION_CODE.gateway.dev
donde GATEWAY_ID es el nombre de la puerta de enlace, HASH es el código hash único que se generó cuando se implementó la API, y REGION_CODE es el código de la ubicación de Cloud en la que implementaste la puerta de enlace.
Por ejemplo:
https://my-gateway-a12bcd345e67f89g0h.uc.gateway.dev
Implementa una API en una puerta de enlace
Para implementar una API en una puerta de enlace, haz lo siguiente:
Google Cloud Consola de
En la Google Cloud consola de, ve a la página API Gateway.
- Haz clic en Crear puerta de enlace.
Se mostrará la página Crear puerta de enlace.
- En Seleccionar una API, selecciona Crear una API nueva en el campo Seleccionar una API.
- En el campo Nombre visible, ingresa el nombre visible de la API.
- En el campo ID de API, ingresa el ID de la API. Consulta los requisitos de ID de API para obtener instrucciones sobre la asignación de nombres de API.
- (Opcional) Agrega etiquetas para tu API.
- En la sección Configuración de API, selecciona Crear una nueva configuración de API en el campo Seleccionar una configuración.
- En el campo Subir una especificación de API, sube un archivo
.yamlo.json. Consulta los formatos de archivo OpenAPI 2.0 y OpenAPI 3.x para la definición de la API. - En el campo Nombre visible, ingresa el nombre visible de la configuración de la API.
- En la lista Seleccionar una cuenta de servicio, selecciona la cuenta de servicio requerida. API Gateway usará esta cuenta de servicio como su identidad.
- (Opcional) Agrega etiquetas para la configuración de tu API.
- En la sección Detalles de la puerta de enlace, ingresa un nombre visible para tu puerta de enlace.
- En el campo Ubicación, selecciona la Google Cloud región en la que deseas implementar tu puerta de enlace.
- (Opcional) Agrega etiquetas para tu API Gateway.
- Haz clic en Crear puerta de enlace.
La API recién creada está visible en la página principal de API Gateway.
Google Cloud CLI
Valida el ID del proyecto que muestra el siguiente comando para asegurarte de que la puerta de enlace no se cree en el proyecto equivocado.
gcloud config list project
Si necesitas cambiar el proyecto predeterminado, ejecuta el siguiente comando y reemplaza PROJECT_ID por el Google Cloud ID del proyecto en el que quieres crear el servicio:
gcloud config set project PROJECT_ID
Consulta la ayuda para el comando
gateway create:gcloud api-gateway gateways create --help
Ejecuta el siguiente comando para implementar la configuración de la API en la puerta de enlace:
gcloud api-gateway gateways create GATEWAY_ID \ --api=API_ID --api-config=CONFIG_ID \ --location=GCP_REGION
Donde:
- GATEWAY_ID especifica el ID de la puerta de enlace nueva. Si la puerta de enlace aún no existe, este comando la creará.
- API_ID especifica el ID de la API de API Gateway asociada con esta puerta de enlace.
- CONFIG_ID especifica el ID de la configuración de la API implementada en la puerta de enlace. Debes especificar una configuración de API cuando creas una puerta de enlace.
- GCP_REGION especifica la ubicación de Cloud para la puerta de enlace implementada.
Mientras se crea la puerta de enlace, la gcloud CLI envía información a la terminal.
Si la operación se completa correctamente, puedes usar el siguiente comando para ver los detalles de la puerta de enlace:
gcloud api-gateway gateways describe GATEWAY_ID \ --location=GCP_REGION
Este comando muestra lo siguiente:
apiConfig: projects/PROJECT_ID/locations/global/apis/API_ID/configs/CONFIG_ID createTime: '2020-02-05T13:44:12.997862831Z' defaultHostname: my-gateway-a12bcd345e67f89g0h.uc.gateway.dev displayName: GATEWAY_ID name: projects/PROJECT_ID/locations/GCP_REGION/gateways/GATEWAY_ID serviceAccount: email: gateway-111111@222222-tp.iam.gserviceaccount.com state: ACTIVE updateTime: '2020-02-05T13