Dar forma a los mensajes, acceder a ellos y convertirlos

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

Consulta la documentación de Apigee Edge.

Puedes usar las políticas incluidas con Apigee para manipular los mensajes que fluyen a través de los proxies de API. Con las políticas, puedes hacer lo siguiente:

  • Convertir mensajes de un formato a otro, como de XML a JSON.
  • Establecer valores variables a partir del contenido de los mensajes y crear mensajes a partir de valores variables.
  • Usa código de procedimiento, como JavaScript, Java y Python, para manejar mensajes y datos de maneras más complejas.

En general, cuando se usan estas políticas, se especifican las entradas y las salidas como variables de flujo. En el tiempo de ejecución, Apigee recupera el valor de entrada de una variable de origen y escribe el valor de salida en una variable de salida.

Este tema presenta estas capacidades. Para obtener información más completa y técnica, consulta las referencias de la política para cada uno.

Administración sencilla para XML y JSON

Apigee incluye políticas que facilitan la conversión entre XML y JSON, y la transformación de XML con XSL.

Convierte JSON en XML

La política de JSONtoXML toma tu entrada JSON y la convierte en XML.

En el siguiente ejemplo de políticas, la política toma un mensaje con formato JSON de la variable request y, luego, reemplaza el valor de la variable por un mensaje con formato XML. La entrada se especifica en el elemento <Source>, mientras que la salida se especifica en el elemento <OutputVariable>.

<JSONToXML name="jsontoxml">
     <Source>request</Source>                     ---> INPUT
     <OutputVariable>request</OutputVariable>          OUTPUT --->
</JSONToXML>

Convierte XML en JSON

La política XMLtoJSON convierte el mensaje de entrada XML en JSON.

En el siguiente ejemplo de políticas, la política toma un mensaje con formato XML de la variable response y, luego, reemplaza el valor de la variable por un mensaje con formato JSON. La entrada se especifica en el elemento <Source>, mientras que la salida se especifica en el elemento <OutputVariable>.

<XMLToJSON name="ConvertToJSON">
   <Source>response</Source>                     ---> INPUT
   <OutputVariable>response</OutputVariable>          OUTPUT --->
</XMLToJSON>

Transforma XML con XSL

Puedes usar la política XSLTransform para transformar mensajes mediante XSL. Por ejemplo, después de convertir una carga útil JSON en XML, puedes usar la política de transformación de XSL con una hoja de estilo para realizar la transformación que necesitas.

En el siguiente ejemplo de políticas, la política toma un mensaje con formato XML de la variable response y, luego, reemplaza el valor de la variable por un mensaje con formato my_transform.xsl. La entrada se especifica en el elemento <Source>, mientras que la salida se especifica en el elemento <OutputVariable>.

<XSL name="TransformXML">
  <Source>response</Source>                        ---> INPUT
  <ResourceURL>xsl://my_transform.xsl</ResourceURL>       --TRANSFORMER--
  <OutputVariable>response</OutputVariable>                            OUTPUT --->
</XSL>

Controla datos variables

El control de datos dentro de un proxy a menudo implica solo trabajar con datos de estado como valores de variables de flujo. A menudo, puedes hacerlo mediante una política que obtenga o establezca valores variables. Por ejemplo, puede que quieras dar forma a los valores de variables en un mensaje o extraer el contenido de un mensaje para configurar valores de variables.

Asegúrate de ver las referencias de las dos siguientes políticas:

Crea transformaciones más complejas

Para el manejo de datos cuya complejidad está fuera de la capacidad de las políticas incluidas, puedes usar lenguajes de procedimiento como JavaScript, Java o Python.

En general, esto implica escribir código en uno de estos lenguajes y, luego, invocar el código desde una política específica para el lenguaje. Para obtener más información, consulta Incorpora código de procedimiento.