Esta página se aplica a Apigee y Apigee Hybrid.
Consulta la documentación de
Apigee Edge.
Puedes hacer que los flujos compartidos realicen el preprocesamiento de solicitudes repetitivas o el post-procesamiento de respuestas en un conjunto de APIs. Con un gancho de flujo, puedes adjuntar un flujo compartido para que se ejecute en el mismo lugar en todos los proxies de API desplegados en un entorno específico. De esta forma, obtienes una secuencia de lógica implementada y desplegada por separado que no forma parte del código de implementación de un proxy.
Como el código adjunto a un hook de flujo está fuera del contexto de la lógica principal del proxy de API, algunos de sus comportamientos difieren de los de los proxies de API. Ten en cuenta lo siguiente:
- Debes tener permiso para adjuntar un flujo compartido a un enlace de flujos. Debes ser administrador de la organización.
- Solo puedes adjuntar un flujo compartido a cada enlace de flujos.
- Puedes adjuntar el mismo flujo compartido a varios enlaces de flujos.
- Si un flujo compartido adjunto a un enlace de flujo genera un error o se producen errores durante la ejecución del flujo compartido, el mensaje se rechazará y se enviará un error a la persona que ha llamado.
- Si se rechaza un mensaje durante la ejecución de un hook de flujo, los detalles se registrarán en Analytics en el contexto del proxy llamado. El flujo compartido también puede generar un error con un código y un mensaje de error personalizados.
En el siguiente vídeo se muestra cómo conectar un flujo compartido a un hook de flujo y, a continuación, cómo hacer un seguimiento en la interfaz de usuario de Apigee.
Un flujo compartido vinculado a un proxy mediante un enlace de flujo es un lugar ideal para la lógica que aplica requisitos de políticas generales. Por ejemplo, supongamos que tienes un equipo que gestiona un único conjunto de requisitos de seguridad para varios equipos que representan diferentes líneas de negocio. Cada equipo de línea de negocio puede desarrollar APIs según sus propios requisitos y sin tener que tener en cuenta los requisitos de seguridad generales. El equipo de seguridad puede implementar esos requisitos de seguridad en un flujo compartido y, a continuación, vincular el flujo al entorno de Apigee mediante un enlace de flujo. Como el flujo compartido no forma parte del código del proxy, el equipo de seguridad puede revisarlo según sea necesario sin interferir con el código de la línea de negocio.
Los flujos compartidos adjuntos mediante enlaces de flujo se ejecutan en esa posición en todos los proxies de API desplegados en el entorno del enlace de proxy. Por este motivo, solo los administradores de una organización de Apigee pueden usar los hooks de flujo.
Para obtener más información sobre los flujos compartidos, consulta el artículo Crear flujos compartidos reutilizables.
Puedes vincular un flujo compartido a un enlace de flujo mediante la interfaz de Apigee o la API Flowhooks. Puedes adjuntar como máximo un flujo compartido a un enlace de flujos en cada uno de los siguientes lugares:
-
Hook de flujo pre-proxy para la lógica que se debe aplicar ANTES de que se ejecute un endpoint de proxy.
Por ejemplo, puedes tener una lógica para aplicar la seguridad en todas las APIs de un entorno.
Hook de flujo previo al objetivo para la lógica que se debe aplicar ANTES de que se ejecute un endpoint de destino.
Por ejemplo, puedes implementar el registro antes de que la solicitud llegue al backend. También puedes aplicar la mediación quitando determinados campos de la solicitud.
Hook de flujo posterior al destino para la lógica que se debe aplicar DESPUÉS de que se ejecute la respuesta de destino.
Esto se aplicará justo después de que el backend devuelva la respuesta. Puedes usarlo para registrar la respuesta del backend o realizar alguna mediación quitando los campos sensibles de la respuesta del backend.
Hook de flujo posterior al proxy para la lógica que se debe aplicar DESPUÉS del endpoint del proxy y justo antes de que se envíe la respuesta al cliente.
Esto podría incluir cierta lógica de aplicación para CORS, registrar la respuesta o realizar alguna combinación o formato.
Vincular un flujo compartido a un enlace de flujos
Para adjuntar un flujo compartido a un gancho de flujo, debes ser administrador de la organización que contenga el flujo compartido.
Apigee en la consola de Cloud
Para vincular un flujo compartido a un enlace de flujos, sigue estos pasos:
En la Google Cloud consola, ve a la página Gestión > Entornos.
- Selecciona la organización que contenga el flujo compartido. Consulta Cambiar de organización.
El flujo compartido estará disponible para cualquier proxy de API y flujo compartido desplegado en un entorno de esta organización. No estará disponible fuera de esta organización.
- Selecciona el entorno que quieras editar de la lista de entornos disponibles.
- En la página Detalles del entorno, haga clic en la pestaña Hooks de flujo.
Se muestra la vista Hooks de flujos.
- En la lista de enlaces de flujos, identifica el enlace de flujo al que quieras vincular el flujo compartido.
El hook de flujo que elijas dependerá de dónde quieras que se ejecute el flujo compartido.
Ubicación del hook de flujo Descripción Pre-proxy Se ejecuta antes de que se ejecute un endpoint de proxy. Preobjetivo Se ejecuta antes de que se ejecute un endpoint de destino. Post-target Se ejecuta después de que se ejecute la respuesta de destino. Post-proxy Se ejecuta después del endpoint del proxy y justo antes de que se envíe la respuesta al cliente. - En el cuadro de lista del hook de flujo que hayas elegido, selecciona el flujo compartido que quieras adjuntar.
- Vincula flujos compartidos a otros enlaces de flujos según sea necesario.
- Haz clic en Guardar para adjuntar los flujos compartidos seleccionados a los enlaces de flujos.
Apigee Classic
Para vincular un flujo compartido a un enlace de flujos, sigue estos pasos:
- Inicia sesión en la interfaz de Apigee.
- Selecciona la organización que contenga el flujo compartido. Consulta Cambiar de organización.
El flujo compartido estará disponible para cualquier proxy de API y flujo compartido desplegado en un entorno de esta organización. No estará disponible fuera de esta organización.
- En la barra de navegación de la izquierda, selecciona Administrar > Entornos > Hooks de flujo.
En la vista Hooks de flujos se muestra lo siguiente:
- En la lista desplegable de entornos, selecciona el que quieras modificar.
- En la lista de enlaces de flujos, identifica el enlace de flujo al que quieras vincular el flujo compartido.
El hook de flujo que elijas dependerá de dónde quieras que se ejecute el flujo compartido.
Ubicación del hook de flujo Descripción Pre-proxy Se ejecuta antes de que se ejecute un endpoint de proxy. Preobjetivo Se ejecuta antes de que se ejecute un endpoint de destino. Post-proxy Se ejecuta después del endpoint proxy y justo antes de que se envíe la respuesta al cliente. Post-target Se ejecuta después de que se ejecute la respuesta de destino. - Coloca el cursor sobre el gancho de flujo de la lista para que se muestre la columna de acciones.
- Haz clic en Editar.
- En el cuadro de diálogo Flujo compartido, selecciona el flujo compartido que quieras adjuntar en el menú Flujo compartido.
- Haz clic en Aceptar.
- Vincula flujos compartidos a otros enlaces de flujos según sea necesario.