Compila un proxy de API simple

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

Apigee Edge le permite exponer rápidamente servicios de backend como API. Esto se logra mediante la creación de un proxy de API que proporciona una fachada para el servicio de backend que deseas exponer. Solo necesitas proporcionar la dirección de la red del servicio de backend, además de cierta información que Edge usa para crear el proxy de API que se expone a los desarrolladores.

El proxy de API separa la implementación de tu servicio de backend de la API que consumen los desarrolladores. Esto protege a los desarrolladores de futuros cambios a sus servicios de backend. Mientras actualizas los servicios de backend, los desarrolladores, aislados de esos cambios, pueden continuar llamando a la API sin interrupciones.

Mira este video para obtener una descripción general del proceso de creación de un proxy de API.

Crea un proxy de API mediante la IU

La manera más sencilla de crear un proxy de API es mediante el asistente de creación de proxy.

Conexión de integración

Para acceder al asistente de creación de proxy mediante la IU de Edge, haz lo siguiente:

  1. Accede a apigee.com/edge.
  2. Selecciona Desarrollar > Proxies de API en la barra de navegación izquierda.
  3. Haz clic en +Proxy.

Aparecerá el asistente de creación de proxy y te guiará por los pasos necesarios para generar y agregar funciones mínimas a un proxy de API.

En la primera página del asistente de creación de proxy, se te pedirá que selecciones un proxy inverso, un servicio de SOAP, un proxy sin destino o un paquete de proxy para personalizar el flujo del asistente.

Versión clásica de Edge (nube privada)

Para acceder al asistente de creación de proxy con la IU de Edge clásica, sigue estos pasos:

  1. Accede a http://ms-ip:9000, donde ms-ip es la dirección IP o el nombre de DNS del nodo del servidor de administración.
  2. Selecciona API > Proxies de API en la barra de navegación superior.
  3. Haz clic en + API Proxy.

Aparecerá el asistente de creación de proxy y te guiará por los pasos necesarios para generar y agregar funciones mínimas a un proxy de API.

En la primera página del asistente de creación de proxy, se te pedirá que selecciones un proxy inverso, un servicio de SOAP, un proxy sin destino o un paquete de proxy para personalizar el flujo del asistente.

La primera página del asistente te permite crear un proxy de API de las siguientes fuentes:

Tipo Descripción
Proxy inverso (más común)

Es un proxy de API que enruta las solicitudes entrantes a servicios de backend HTTP existentes. Puede ser una API JSON o XML. Consulta Crea un proxy inverso para un servicio HTTP más adelante en esta sección.

Haz clic en Usar una especificación de OpenAPI para generar el proxy a partir de una especificación de OpenAPI válida. Si deseas obtener más información sobre esta opción, consulta Usa especificaciones de OpenAPI para generar proxies más adelante en esta sección.

Servicio de SOAP Es un proxy de API generado a partir de un archivo WSDL. Consulta Expón un servicio web basado en SOAP como un proxy de API.
Sin destino

Es un proxy de API sin backend de API (“sin destino”). Es similar a la creación de un proxy inverso para un servicio HTTP descrita antes, a excepción de que no especificarás una API existente cuando definas los detalles del proxy de API.

Haz clic en Usar una especificación de OpenAPI para generar el proxy a partir de una especificación de OpenAPI válida. Si deseas obtener más información sobre esta opción, consulta Usa especificaciones de OpenAPI para generar proxies más adelante en esta sección.

Destino alojado

Un proxy de API que enruta una aplicación de Node.js que se implementa en el entorno de Hosted Targets. Consulta la Descripción general de destinos alojados.

Paquete de proxy de carga Es un paquete de proxy de API existente (por ejemplo, uno de los proxies de API de muestra disponibles en GitHub). Consulta Importa un proxy de API desde un paquete de proxy de API.

En las siguientes secciones, se describe cómo crear un proxy de API mediante el uso de cada origen.

Crea un proxy inverso para un servicio HTTP

Edge genera proxies inversos a partir de dos datos:

  • La URL del servicio de backend
  • La ruta de acceso del URI que identifica de forma única la API que mostrará el proxy de la API a las aplicaciones para consumidores

La URL del servicio de backend, por lo general, representa una aplicación con el servicio habilitado que es propiedad de tu organización. También puede apuntar a una API disponible de forma pública. La API o el servicio pueden estar bajo tu control (por ejemplo, una aplicación interna de RR.HH. o una aplicación de rieles en Cloud) o pueden ser de terceros (por ejemplo, Twitter o Instagram).

Conexión de integración

  1. Accede al asistente de creación de proxy, como se describe en Crea un proxy de API mediante la IU antes en esta sección.
  2. En el asistente de creación de proxy, haz clic en Proxy inverso (más común). A fin de generar el proxy a partir de una especificación de OpenAPI válida y existente, haz clic en Usar una especificación de OpenAPI. Si deseas obtener detalles sobre esta opción, consulta Usa especificaciones de OpenAPI para generar proxies más adelante.
  3. En la página Detalles del asistente, ingresa la siguiente información.
    Campo Descripción
    Nombre Es el nombre que se muestra para tu API. Especifica caracteres alfanuméricos, guiones (-) o guiones bajos (_).
    Ruta base

    Es el fragmento de URI que aparece después de la dirección http(s)://[host] del proxy de API. Edge usa el URI de la ruta de acceso base para hacer coincidir y enrutar los mensajes de solicitud entrantes al proxy de API adecuado.

    NOTA: La ruta base del proxy de API se configura de forma predeterminada como el valor especificado para el campo Name, convertido en minúsculas.

    Luego de la ruta base, se encuentran las URL de recursos adicionales. A continuación, se muestra la estructura completa de la URL que los clientes usarán para llamar al proxy de API:

    https://[host]/base_path/conditional_flow_path

    NOTA: La ruta base debe ser única. No puedes implementar dos proxies de API con la misma ruta base. Si editas un proxy de API implementado y estableces la ruta de acceso base con el mismo valor que la ruta base de otro proxy de API, Edge anula la implementación automática del proxy de API cuando lo guardas. Antes de poder volver a implementar el proxy de API, debes editar la ruta base para que sea única.

    Use comodines en las rutas base

    Usa uno o más comodines /*/ en las rutas base del proxy de API con el fin de preparar a los proxies de API para el futuro. Por ejemplo, una ruta base de /team/*/members permite que los clientes llamen a https://[host]/team/blue/members y a https://[host]/team/green/members sin necesidad de crear proxies de API nuevos para admitir equipos nuevos. Ten en cuenta que no se admite /**/.

    Descripción Es la descripción de la API (opcional).
    (API existente) de destino Es la URL del servicio de backend que invoca este proxy de API.
  4. En la página Políticas comunes del asistente, configura lo siguiente:
    • Los requisitos de autorización de seguridad en Seguridad: Autorización. Consulta Agrega seguridad más adelante en esta sección.
    • La compatibilidad con el uso compartido de recursos multiorigen (CORS) en Seguridad: Navegador. Consulta Agrega compatibilidad con CORS más adelante en esta sección.
    • Las cuotas para proteger el servicio de backend del tráfico alto en Cuota. Consulta Cuotas (No está disponible si se selecciona la autorización de transferencia).
    • La aplicación forzosa del límite de monetización para organizaciones con la monetización habilitada en Monetización. Consulta Aplica límites de monetización en proxies de API de forma forzosa.
  5. En la página Hosts virtuales del asistente, selecciona los hosts virtuales a los que se vinculará el proxy de API cuando se implemente. Para obtener más información, consulta Información acerca de los hosts virtuales.
  6. En la página Resumen, selecciona los entornos de implementación, si lo deseas, y haz clic en Crear e implementar.

    Tu proxy de API nuevo se crea y se implementa en el entorno seleccionado.

  7. Haz clic en Editar proxy para mostrar la página de detalles del proxy de API.

Versión clásica de Edge (nube privada)

  1. Accede al asistente de creación de proxy, como se describe en Crea un proxy de API mediante la IU antes en esta sección.
  2. En el asistente para compilar un proxy, selecciona Proxy inverso (más común). Para generar el proxy a partir de una especificación de OpenAPI válida existente, haz clic en Usar OpenAPI. Para obtener detalles sobre esta opción, consulta Cómo usar las especificaciones de OpenAPI para generar proxies a continuación.
  3. Presiona Siguiente.
  4. En la página Detalles del asistente, ingresa la siguiente información.
    Campo Descripción
    Nombre del proxy El nombre que se muestra para tu API.
    Ruta base del proxy

    La ruta base del proxy es un fragmento de URI que aparece después de la dirección http(s)://[host] del proxy de API. Edge usa el URI de la ruta base para hacer coincidir y enrutar los mensajes de solicitud entrantes al proxy de API adecuado.

    Nota: Para obtener recomendaciones de Apigee sobre el control de versiones de las API, consulta Control de versiones en el libro electrónico Web API Design: The Missing Link.

    Después de la ruta de acceso base, se encuentran las URLs de recursos adicionales. Esta es la estructura de URL completa que los clientes usarán para llamar a tu proxy de API:

    https://[host]/base_path/conditional_flow_path

    Nota: La ruta base debe ser única. Si luego editas este proxy y estableces su ruta base para que sea la misma que la de otro proxy de API, este proxy de API se anula automáticamente cuando lo guardas. Debes editar la ruta base antes de volver a implementarla.

    Usa un comodín en rutas de acceso base

    Puedes usar uno o más comodines /*/ en las rutas base del proxy de API para preparar los proxies para el futuro. Por ejemplo, una ruta base de /team/*/members permite a los clientes llamar a https://[host]/team/blue/members y https://[host]/team/green/members sin necesidad de crear proxies de API nuevos para brindar asistencia a equipos nuevos. Ten en cuenta que /**/ no es compatible.

    Nota: De manera predeterminada, la ruta base del proxy tiene el valor especificado para el nombre del proxy convertido en minúsculas, a menos que edites el contenido de forma explícita en el campo Ruta base del proxy.

    API existente La URL que la plataforma de API invoca en nombre de las apps que llaman a tu API a través de la URL del proxy de la API.
    Descripción Es la descripción de la API.
  5. En la página Seguridad del asistente, configura lo siguiente:
  6. En la página Virtual Hosts del asistente, selecciona los hosts virtuales a los que se vinculará el proxy de API cuando se implemente. Para obtener más información, consulta Información acerca de los hosts virtuales.
  7. Selecciona los entornos de implementación y haz clic en Build and Deploy.
    Se enviará una confirmación de que tu nuevo proxy de API se creó y se implementó con éxito en el entorno seleccionado.
  8. Haz clic en View the <proxy name> proxy in el editor para mostrar la página de detalles del proxy de API.

Importa un proxy de API desde un paquete de proxy de API

A menudo, debes definir los proxies de API como una colección de archivos XML, junto con cualquier otro archivo de compatibilidad. Si defines los proxies de API como un conjunto de archivos externos a Edge, puedes mantenerlos en un sistema de control de fuente y, luego, importarlos a Edge para probarlos e implementarlos.

Mira este video para obtener información sobre cómo crear e importar un proxy de API desde un paquete de proxy de API.

Conexión de integración

Para importar proxies de API desde un paquete de proxy de API, sigue estos pasos:

  1. Accede al asistente de creación de proxy, como se describe en Crea un proxy de API mediante la IU antes en esta sección.
  2. Haz clic en Subir paquete de proxy.
  3. En la página Upload proxy bundle del asistente de proxy, ingresa la siguiente información.

    Campo Descripción
    Paquete ZIP Es el archivo ZIP que contiene la configuración del proxy de API. Arrastra y suelta o haz clic para navegar hasta el archivo.
    Nombre Es el nombre que se muestra para tu API. Se configura de forma predeterminada como el nombre del archivo ZIP sin la extensión.
  4. Haz clic en Siguiente (Next).
  5. En la página Resumen, selecciona los entornos de implementación, si lo deseas, y haz clic en Crear e implementar.
    Se mostrará una confirmación de que tu proxy de API nuevo se creó de forma adecuada.
  6. Haz clic en Editar proxy para mostrar la página de detalles del proxy de API.

Versión clásica de Edge (nube privada)

  1. Accede al asistente de creación de proxy, como se describe en Crea un proxy de API mediante la IU antes en esta sección.
  2. En el asistente de compilación de un proxy, selecciona Paquete de proxy.
  3. Presiona Siguiente.
  4. En la página Detalles del asistente de proxy, ingresa la siguiente información.

    Campo Descripción
    Paquete ZIP Haz clic en Choose File y navega al archivo ZIP que contiene la configuración del proxy de la API.
    Nombre del proxy El nombre que se muestra para tu API.
  5. Revisa la información de compilación y haz clic en Build.
    Si se ejecuta correctamente, se mostrará un mensaje y Edge implementará automáticamente el proxy de API importado en el entorno seleccionado de tu organización. La API expuesta por el proxy de API está disponible para que se la invoque.
  6. Haz clic en View the <proxy name> proxy en el editor para mostrar la página de detalles del proxy de API.
  7. Para implementar el proxy, haz clic en el menú desplegable Deployment, selecciona el entorno en el que deseas realizar la implementación y responde la solicitud.

Expón un servicio web basado en SOAP como un proxy de API

En el asistente de creación de proxy, haz clic en servicio de SOAP y sigue el asistente a fin de crear un proxy de transferencia o uno basado en REST para un servicio de SOAP. Para obtener detalles, consulta Expón un servicio de SOAP como proxy de API.

Agrega seguridad

En la página Políticas comunes (Edge) o Seguridad (Edge clásico) del asistente de creación de proxy, selecciona el tipo de autorización de seguridad que deseas agregar. En la siguiente tabla, se resumen las opciones disponibles:

Autorización de seguridad Descripción
Clave de API Agrega una verificación de clave de API simple al proxy de API que estás definiendo. En respuesta, la plataforma de la API agrega una política VerifyAPIKey nueva y una política AssignMessage al proxy de API. La política VerifyAPIKey valida las claves de API presentadas mediante la solicitud de apps. La política AssignMessage quita la clave de API, proporcionada en la llamada a la API como parámetro de consulta, de la solicitud reenviada al servidor de backend.
OAuth 2.0 Agrega una autenticación basada en OAuth 2.0 a tu proxy de API. Apigee Edge agrega automáticamente dos políticas a tu proxy de API: una para verificar un token de acceso y otra para quitarlo del mensaje antes de reenviarlo a tu servicio de backend. Para aprender a obtener un token de acceso, consulta OAuth.
Transferencia (sin autorización) No se requiere autorización. Las solicitudes se pasan al backend sin ninguna verificación de seguridad en Apigee Edge.

Agrega compatibilidad con CORS

El CORS (uso compartido de recursos multiorigen) es un mecanismo estándar que permite que un navegador web realice solicitudes directas a otro dominio. En el estándar de CORS, se define un conjunto de encabezados HTTP que los servidores y los navegadores web usan para implementar la comunicación entre dominios.

Para agregar compatibilidad con CORS a tu API, selecciona Agregar encabezados de CORS en la página Políticas comunes (Edge) o Seguridad (Edge clásico) del asistente de creación de proxy.

Para obtener más información detallada sobre la compatibilidad con CORS, incluida la adición de la compatibilidad con la verificación previa de CORS a un proxy, consulta Agrega la compatibilidad con CORS a un proxy de API.

Usa especificaciones de OpenAPI para generar proxies

En esta sección, se analiza la opción Usar OpenAPI, que está disponible para generar desde una especificación de OpenAPI los siguientes tipos de proxies de API: inverso, Node.js o sin destino.

¿Qué es una especificación de OpenAPI?

Logotipo de Open API Initiative"Open API Initiative (OAI) se enfoca en crear, desarrollar y promocionar un formato de descripción de API que no depende de los proveedores basado en la especificación de Swagger". Para obtener más información sobre Open API Initiative, consulta https://openapis.org.

Una Especificación de OpenAPI usa un formato estándar para describir una API de RESTful. Una especificación de OpenAPI, que está escrita en formato JSON o YAML, es legible para las máquinas, pero también es fácil de leer y comprender. En la especificación, se describen elementos de una API como su ruta base, las rutas y verbos, los encabezados, los parámetros de consulta, las operaciones, los tipos de contenido, las descripciones de respuesta y más. Además, una especificación de OpenAPI se suele usar para generar documentación de la API.

Este es un fragmento de una especificación de OpenAPI en la que se describe el servicio de destino ficticio de Apigee, http://mocktarget.apigee.net. Para obtener más información, consulta https://github.com/apigee/api-platform-samples/tree/master/default-proxies/helloworld/openapi.

openapi: 3.0.0
info:
  description: OpenAPI Specification for the Apigee mock target service endpoint.
  version: 1.0.0
  title: Mock Target API
paths:
  /:
    get:
      summary: View personalized greeting
      operationId: View a personalized greeting
      description: View a personalized greeting for the specified or guest user.
      parameters:
        - name: user
          in: query
          description: Your user name.
          required: false
          schema:
            type: string
      responses:
        "200":
          description: Success
  /help:
    get:
      summary: Get help
      operationId: Get help
      description: View help information about available resources in HTML format.
      responses:
        "200":
          description: Success
...

A través del asistente de creación de proxy, puedes importar una especificación de OpenAPI y usarla para generar un proxy de API. Una vez que se genera el proxy, puedes usar la IU de Edge para desarrollarlo aún más mediante el agregado de políticas, la implementación de código personalizado, y demás, como con cualquier proxy de Edge.

Crea un proxy de API a partir de una especificación de OpenAPI

Crea tus proxies de API desde una especificación de OpenAPI. Con solo unos clics, tendrás un proxy de API con las rutas, los parámetros, los flujos condicionales y los extremos de destino generados automáticamente. Luego puedes agregar características como la seguridad de OAuth, el límite de frecuencia y el almacenamiento en caché.

En el asistente de creación de proxy, haz clic en Usa especificaciones de OpenAPI y sigue el asistente para crear un proxy inverso o uno sin destino desde una especificación de OpenAPI. Para obtener más detalles, consulta Crea un proxy de API desde una especificación de OpenAPI.

Mira este video para aprender cómo crear un proxy de API desde una especificación de OpenAPI.

Actualiza los flujos en un proxy de API mediante una especificación de OpenAPI

Después de crear un proxy de API a partir de una especificación de OpenAPI, si la modificas para agregar rutas de recursos adicionales, puedes usar la especificación a fin de agregar los flujos condicionales asociados al proxy de API.

Para actualizar los flujos en un proxy de API mediante una especificación de OpenAPI, haz lo siguiente:

  1. Agrega las nuevas rutas de recursos a la especificación de OpenAPI. Consulta Edita una especificación de OpenAPI existente.
  2. Abre el proxy de API en la IU y haz clic en la pestaña Develop.
  3. En el navegador, haz clic en + junto al extremo del proxy que deseas actualizar.
    Se abrirá el cuadro de diálogo del flujo condicional nuevo.
  4. Haz clic en Desde OpenAPI si no está seleccionado.
    Si hay recursos en la especificación de OpenAPI que no tienen un flujo condicional correspondiente en el proxy de API, se enumerarán en el diálogo, como se muestra en la siguiente figura. Recursos que no se representan como flujos en el proxy de API actual En este ejemplo, se incluyen /loveapis, /ip, /json y /xml.
  5. Selecciona cada uno de los recursos a los que deseas agregar un flujo condicional.
  6. Haz clic en Agregar.

Los flujos condicionales se agregan a tu proxy de API.

Crea una revisión nueva de un proxy de API

Crea una revisión nueva de un proxy de API, como se describe a continuación.

Conexión de integración

Para crear una revisión nueva de un proxy de API mediante la IU de Edge, haz lo siguiente:

  1. Accede a apigee.com/edge.
  2. Selecciona Desarrollar > Proxies de API en la barra de navegación izquierda.
  3. Haz clic en el proxy de API en la lista que deseas copiar.
  4. Selecciona Project > Save as New Revision.

Versión clásica de Edge (nube privada)

Para crear una revisión nueva de un proxy de API mediante la IU de Edge clásica, sigue estos pasos:

  1. Accede a http://ms-ip:9000, donde ms-ip es la dirección IP o el nombre de DNS del nodo del servidor de administración.
  2. Selecciona API > Proxies de API en la barra de navegación superior.
  3. Haz clic en el proxy de API en la lista que deseas copiar.
  4. Selecciona Project > Save as New Revision.

Copia un proxy de API

Copia un proxy de API existente en un proxy de API nuevo, como se describe a continuación.

Conexión de integración

Para copiar un proxy de API con la IU de Edge, haz lo siguiente:

  1. Accede a apigee.com/edge.
  2. Selecciona Desarrollar > Proxies de API en la barra de navegación izquierda.
  3. Haz clic en el proxy de API en la lista que deseas copiar.
  4. Selecciona Project > Save as New API Proxy.
  5. En el cuadro de diálogo Guardar como proxy nuevo, ingresa el nombre del proxy de API nuevo.
  6. Haz clic en Agregar.

Versión clásica de Edge (nube privada)

Para copiar un proxy de API con la IU de Edge clásica, sigue estos pasos:

  1. Accede a http://ms-ip:9000, donde ms-ip es la dirección IP o el nombre de DNS del nodo del servidor de administración.
  2. Selecciona API > Proxies de API en la barra de navegación superior.
  3. Haz clic en el proxy de API en la lista que deseas copiar.
  4. Selecciona Project > Save as New API Proxy.
  5. En el cuadro de diálogo Guardar como proxy nuevo, ingresa el nombre del proxy de API nuevo.
  6. Haz clic en Agregar.

Crea una copia de seguridad de un proxy de API

Puedes crear una copia de seguridad de un proxy de API existente como un conjunto de archivos XML en un paquete de proxy de API. Una vez exportado a un paquete, puedes importar el proxy de API a un proxy nuevo, como se describe en Importa un proxy de API desde un paquete de proxy de API antes en esta sección. Para obtener más información, consulta Descarga proxies de API.

Crea un proxy de API mediante la API

Para crear un proxy de API con la API, consulta API de proxies de API.