Transformación de solicitudes entrantes y respuestas salientes

Descubra cómo modificar las solicitudes entrantes y las respuestas salientes que se envían desde y hacia los servicios de backend con API Gateway.

A menudo hay situaciones en las que desea que un gateway de API modifique las solicitudes entrantes antes de enviarlas a servicios backend. Del mismo modo, puede que desee que el gateway de API modifique las respuestas devueltas por los servicios backend. Por ejemplo:

  • Los servicios backend pueden requerir que las solicitudes incluyan un juego concreto de cabeceras HTTP (por ejemplo, Accept-Language y Accept-Encoding). Para ocultar este detalle de implantación a los consumidores y clientes de API, puede utilizar el gateway de API para agregar las cabeceras necesarias.
  • Los servidores web suelen incluir información de versión completa en las cabeceras de respuesta. Por razones de seguridad, es posible que desee evitar que los consumidores y clientes de API conozcan la pila de tecnología subyacente. Puede utilizar el gateway de API para eliminar las cabeceras del servidor de las respuestas.
  • Los servicios backend pueden incluir información confidencial en una respuesta. Puede utilizar el gateway de API para eliminar dicha información.

Mediante un gateway de API, puede:

  • Agregar, eliminar y modificar cabeceras en solicitudes y respuestas.
  • Agregar, eliminar y modificar los parámetros de consulta en solicitudes.
  • Reescribir URL de solicitud desde un formato público a un formato interno, tal vez para soportar aplicaciones heredadas y migraciones.

Puede utilizar políticas de solicitud y respuesta para transformar las cabeceras y los parámetros de consulta de las solicitudes entrantes y las cabeceras de las respuestas salientes (consulte Agregación de políticas de solicitud y políticas de respuesta a especificaciones de despliegue de API).

Puede incluir variables de contexto en las políticas de respuesta y solicitud de transformación de cabecera y parámetros de consulta. La inclusión de variables de contexto permite modificar cabeceras y parámetros de consulta con los valores de otras cabeceras, parámetros de consulta, parámetros de ruta de acceso y parámetros de autenticación. Tenga en cuenta que los valores de los valores de variables de contexto se extraen de la solicitud o respuesta original y no se actualizan posteriormente, porque un gateway de API utiliza una política de transformación para evaluar una solicitud o respuesta. Para obtener más información sobre las variables de contexto, consulte Agregación de variables de contexto a políticas y definiciones de backend HTTP.

Si una solicitud de transformación de cabecera o de parámetro de consulta o una política de respuesta dan lugar a un parámetro de consulta o cabecera no válido, se ignorará la política de transformación.

Tenga en cuenta que no puede utilizar políticas de transformación de cabecera para transformar determinadas cabeceras de solicitud y respuesta protegidas. Consulte Cabeceras de solicitud protegidas y cabeceras de respuesta.

Puede agregar políticas de respuesta y solicitud de transformación de parámetros de consulta y cabecera a una especificación de despliegue de API mediante:

  • uso de la consola
  • edición de un archivo JSON

Contenido: