Desarrollar proxies de API

Esta página se aplica a Apigee y Apigee Hybrid.

Consulta la documentación de Apigee Edge.

Expón APIs en Apigee implementando proxies de APIs. Los proxies de APIs desvinculan la API orientada a aplicaciones de los servicios de backend y protegen las aplicaciones frente a cambios en el código del backend.

Desarrolla tus proxies de API con Apigee en Cloud Code, tal como se describe en las siguientes secciones. Consulta también Gestionar carpetas y archivos en un espacio de trabajo de Apigee.

Crear un proxy de APIs

Para crear un proxy de API con Apigee en Cloud Code, asegúrate de haber creado un espacio de trabajo de desarrollo local y, a continuación, haz lo siguiente:

  1. Realiza una de las siguientes acciones:

    • En tu espacio de trabajo, coloca el cursor sobre la carpeta apiproxies y haz clic en Icono Crear proxy de API.

      + se muestra cuando colocas el cursor sobre la carpeta apiproxies

    • Selecciona Ver > Paleta de comandos para abrir la paleta de comandos y selecciona Cloud Code: Create Apigee proxy bundle (Cloud Code: Crear paquete de proxy de Apigee).

    Se abrirá el asistente Crear proxy.

  2. Selecciona una de las opciones siguientes:

    Tipo Descripción
    Access token-based authentication

    Añade la autenticación basada en OAuth 2.0 a tu proxy de API. Apigee añade automáticamente las siguientes políticas a tu proxy de API:

    • Cuota para gestionar la cuota en el proxy.
    • AssignMessage para quitar la clave de API, proporcionada en la llamada a la API como parámetro de consulta, de la solicitud reenviada al servidor backend.
    • OAuthV2 como método de autenticación.
    API key-based authentication

    Un proxy de API que usa una verificación de clave de API sencilla. Apigee añade automáticamente las siguientes políticas a tu proxy de API:

    • Cuota para gestionar la cuota en el proxy.
    • VerifyAPIKey para validar las claves de API presentadas por las aplicaciones que envían solicitudes.
    • AssignMessage para quitar la clave de API, proporcionada en la llamada a la API como parámetro de consulta, de la solicitud reenviada al servidor backend.
    Echo request

    Un proxy de API que devuelve las solicitudes. No hay backend de destino o de API para este tipo de proxy y no hay autenticación. No se te pedirá que especifiques una URL para el servicio de backend (Target (Existing API)) y no se incluirá la configuración predeterminada del endpoint de destino.

    Simple reverse proxy

    Un proxy de API que reenvía las solicitudes a un backend de destino. No incluye la autenticación, por lo que las solicitudes se envían al backend sin ninguna comprobación de seguridad.

    OpenAPI 3.0 spec

    Crea un proxy cargando una especificación de OpenAPI 3.0. Para obtener más información, consulta la iniciativa OpenAPI.

  3. Consulta los campos principales del proxy de la API para obtener información sobre los campos, como la ruta base, que se necesitan para crear cada tipo de proxy. Responde a cada una de las peticiones y pulsa Intro para confirmar y continuar, o Esc para cancelar el asistente.

Después de completar los pasos del asistente, la nueva carpeta apiproxy-name se añade a apiproxies en la sección Apigee. Cada carpeta de proxy de API se estructura como se describe en Estructura de directorios de configuración de proxy de API.

A continuación, se muestra un ejemplo de la configuración predeterminada creada para un proxy de API de tipo API key-based authentication.

Estructura de carpetas de un proxy de autenticación basado en claves de API

Para obtener una descripción de la configuración predeterminada, consulta Explorar la configuración predeterminada del proxy de API.

Explorar la configuración predeterminada del proxy de API

En la siguiente tabla se resumen los contenidos incluidos en la configuración predeterminada al crear un proxy de API en función del tipo de proxy de API y las opciones de autenticación seleccionadas.

Archivo de configuración
Proxy inverso sencillo
Solicitud de eco
Autenticación con token de acceso (OAuth V2)
Autenticación con clave de API
proxies/default.xml
Configuración predeterminada del endpoint de proxy.
targets/default.xml
Configuración de endpoint de destino predeterminada.
 
impose-quota.xml
Política de cuota para definir una cuota predeterminada.
   
remove-header-authorization.xml
Política AssignMessage para quitar el encabezado Authorization que se transfiere para la autenticación.
   
 
remove-query-param-apikey.xml
Política AssignMessage para quitar el parámetro de consulta apikey que se transfiere para la autenticación.
     
verify-api-key.xml
Política VerifyAPIKey para aplicar la verificación de claves de API.
     
Política verify-oauth-v2-access-token.xml
OAuthV2 para validar tokens de acceso de OAuth V2.
   
 

Subir un paquete de proxy de API

Para subir un paquete de proxy de API a Apigee en Cloud Code, sigue estos pasos:

  1. Realiza una de las siguientes acciones:

    • En tu espacio de trabajo de Apigee, coloca el cursor sobre la carpeta apiproxies y haz clic en Icono Importar paquete de proxy de API.

    • Selecciona Ver > Paleta de comandos para abrir la paleta de comandos y selecciona Cloud Code: Import Apigee proxy bundle (Cloud Code: Importar paquete de proxy de Apigee).

  2. Ve al paquete del proxy de API que quieras subir y haz clic en Seleccionar. El paquete del proxy de API debe estructurarse tal como se describe en Estructura de directorios de configuración de proxies de API.

  3. (Opcional) De forma predeterminada, se usa el nombre del archivo ZIP menos su extensión para el nombre del proxy de API. Si el nombre no es único, se te pedirá que introduzcas otro.

La carpeta apiproxy-name que has subido se añade a apiproxies en tu espacio de trabajo.

Gestionar endpoints de proxy

Como se describe en ¿Qué es un proxy de API?, un endpoint de proxy (ProxyEndpoint) define la forma en que las aplicaciones cliente consumen tus APIs. Configura el endpoint del proxy para definir la URL de tu proxy de API. El endpoint del proxy también determina si las aplicaciones acceden al proxy de la API a través de HTTP o HTTPS. Puedes asociar políticas al endpoint de proxy para aplicar medidas de seguridad, comprobaciones de cuota y otros tipos de control de acceso y limitación de la frecuencia.

Cree y configure endpoints proxy como se describe en las siguientes secciones.

Crear endpoints de proxy

Cuando crea un proxy de API, se añade un endpoint de proxy predeterminado a la configuración del proxy de API. Para obtener más información, consulta Explorar la configuración predeterminada del proxy de API. Puedes crear endpoints proxy adicionales según sea necesario.

Para crear un endpoint de proxy con Apigee en Cloud Code, sigue estos pasos:

  1. En tu espacio de trabajo de Apigee, realiza una de las siguientes acciones:

    • Coloca el cursor sobre una de las siguientes carpetas, haz clic en Icono de crear endpoint de proxy y selecciona Crear endpoint proxy:
      • Paquete de proxy apiproxy-name
      • apiproxy-name/apiproxy
    • Coloca el cursor sobre la carpeta apiproxy-name/apiproxy/proxies y haz clic en Icono de crear endpoint de proxy.

    Se abrirá el asistente Crear endpoint de proxy.

  2. Introduce los valores de la siguiente serie de peticiones. Pulsa Intro después de cada uno para confirmar y continuar, o Esc para cancelar.

    Campo Descripción
    Proxy endpoint name Nombre usado para identificar el endpoint del proxy.
    API proxy base path Parte de la URL que se usa para enviar solicitudes a tu API. Apigee usa la URL para buscar y enrutar las solicitudes entrantes al proxy de API adecuado.
    Target endpoint Selecciona no target o default. Para obtener información, consulta Elementos de configuración de ProxyEndpoint.

El endpoint se crea, se añade a la carpeta apiproxy-name/apiproxy/proxies de la sección Apigee y se abre en el editor. Configura el endpoint del proxy, tal como se describe en la siguiente sección.

Configurar endpoints de proxy

Para configurar los endpoints de proxy, consulta las siguientes secciones:

Gestionar los endpoints de destino

Tal como se describe en ¿Qué es un proxy de API?, un punto de conexión de destino (TargetEndpoint) define la forma en que el proxy de API interactúa con tus servicios de backend. Configuras el endpoint de destino para que reenvíe las solicitudes al servicio de backend adecuado y defines los ajustes de seguridad, el protocolo HTTP o HTTPS y otra información de conexión. Puedes adjuntar políticas al endpoint de destino para asegurarte de que los mensajes de respuesta tengan el formato adecuado para la aplicación que ha enviado la solicitud inicial.

Cree y configure los endpoints de destino tal como se describe en esta sección.

Crear endpoints de destino

Cuando creas un proxy de API inverso, se añade un punto de conexión de destino predeterminado a la configuración del proxy de API. Cuando se crea un proxy de API sin un destino backend, solo se añade el endpoint de proxy predeterminado a la configuración del proxy de API. No se añade ningún endpoint de destino. Para obtener más información, consulta Explorar la configuración predeterminada del proxy de API.

Crea los endpoints de destino que necesites.

Para crear un endpoint de destino con Apigee en Cloud Code, sigue estos pasos:

  1. En tu espacio de trabajo de Apigee, realiza una de las siguientes acciones:

    • Coloca el cursor sobre una de las siguientes carpetas, haz clic en Icono de crear endpoint de destino y selecciona Crear endpoint de destino:
      • Paquete de proxy apiproxy-name
      • apiproxy-name/apiproxy
    • Coloca el cursor sobre la carpeta apiproxy-name/apiproxy/targets y haz clic en Icono de crear endpoint de destino.

    Se abre el asistente Crear endpoint de destino.

  2. Siga estos pasos en función del tipo de endpoint de destino que quiera crear:

    Tipo Pasos
    Destino HTTP(s) externo

    Para definir un destino HTTP(s) externo, sigue estos pasos:

    1. Selecciona Destino HTTP(s).
    2. Escriba el nombre del endpoint de destino en Nombre del endpoint de destino.
    3. En URL de destino de backend, introduce la URL del servicio de backend que invoca este endpoint de destino.

    Para obtener más información, consulta Determinar la URL del endpoint de destino.

    Encadenamiento de proxies

    Para definir un proxy de API desplegado localmente como destino, sigue estos pasos:

    1. Selecciona Encadenamiento de proxies.
    2. Escriba el nombre del endpoint de destino en Nombre del endpoint de destino.
    3. Selecciona un proxy de APIs.
    4. Seleccione el endpoint del proxy.

    Para obtener más información, consulta Encadenar proxies.

    Destino con balanceo de carga

    Para definir un destino con balanceo de carga mediante servidores de destino definidos en el entorno, sigue estos pasos:

    1. Selecciona Destino con balanceo de carga.
    2. Escriba el nombre del endpoint de destino en Nombre del endpoint de destino.

    Para obtener más información, consulta Configurar un TargetEndpoint para equilibrar la carga entre TargetServers con nombre.

El endpoint de destino se crea, se añade a la carpeta apiproxy-name/apiproxy/targets y se abre en el editor. Configure el endpoint de destino, tal como se describe en la siguiente sección.

Configurar los endpoints de destino

Configure los endpoints de destino, tal como se describe en los temas siguientes.