Esta página se aplica à Apigee e à Apigee híbrida.
Confira a documentação da Apigee Edge.
É possível usar políticas incluídas no Apigee para manipular as mensagens que passam pelos proxies da API. Com as políticas, você pode:
- Converter mensagens entre formatos, por exemplo, de XML para JSON.
- Definir valores de variável do conteúdo da mensagem e crie mensagens a partir de valores variáveis.
- Usar código processual, como JavaScript, Java e Python, para lidar com mensagens e dados de maneiras mais complexas.
Em geral, ao usar essas políticas, você especifica a entrada e a saída como variáveis de fluxo. No ambiente de execução, a Apigee recupera o valor de entrada de uma variável de origem e grava o valor de saída em uma variável de saída.
Este tópico apresenta esses recursos. Para mais informações técnicas e completas, consulte as referências de política de cada um.
Processamento simples para XML e JSON
A Apigee inclui políticas que facilitam a conversão entre XML e JSON e para transformar XML com XSL.
Como converter JSON em XML
A política JSONtoXML converte a entrada JSON em XML.
No exemplo de política a seguir, a política usa uma mensagem formatada em JSON da variável
request
e substitui o valor da variável por uma mensagem formatada em XML.
A entrada é especificada no elemento <Source>
, enquanto a saída é especificada
no elemento <OutputVariable>
.
<JSONToXML name="jsontoxml"> <Source>request</Source> ---> INPUT <OutputVariable>request</OutputVariable> OUTPUT ---> </JSONToXML>
Como converter XML em JSON
A política XMLtoJSON converte uma mensagem de entrada XML em JSON.
No exemplo de política a seguir, a política usa uma mensagem formatada em XML da variável
response
e substitui o valor da variável por uma mensagem formatada em JSON.
A entrada é especificada no elemento <Source>
, enquanto a saída é especificada
no elemento <OutputVariable>
.
<XMLToJSON name="ConvertToJSON"> <Source>response</Source> ---> INPUT <OutputVariable>response</OutputVariable> OUTPUT ---> </XMLToJSON>
Como transformar XML com XSL
Use a política de XSLTransform para transformar mensagens usando o XSL. Por exemplo, após a conversão de um payload JSON em XML, é possível usar a política de transformação XSL com uma folha de estilo para executar a transformação necessária.
No exemplo de política a seguir, a política usa uma mensagem formatada em XML da variável
response
e substitui o valor da variável por uma mensagem formatada por
my_transform.xsl
. A entrada é especificada no elemento <Source>
,
enquanto a saída é especificada no elemento <OutputVariable>
.
<XSL name="TransformXML"> <Source>response</Source> ---> INPUT <ResourceURL>xsl://my_transform.xsl</ResourceURL> --TRANSFORMER-- <OutputVariable>response</OutputVariable> OUTPUT ---> </XSL>
Como processar dados variáveis
O gerenciamento de dados em um proxy geralmente envolve apenas o trabalho com dados de estado como valores de variável de fluxo. Geralmente, isso é feito usando uma política que obtém ou define valores variáveis. Por exemplo, é possível moldar valores de variáveis em uma mensagem ou extrair o conteúdo de uma mensagem para definir valores variáveis.
Consulte as referências para as duas políticas a seguir:
- Política AssignMessage para criar mensagens com base em valores variáveis.
- Política ExtractVariables para atribuir variáveis do conteúdo da mensagem.
Como criar transformações mais complexas
Para o processamento de dados com complexidade fora da capacidade das políticas incluídas, use linguagens procedurais como JavaScript, Java ou Python.
Geralmente, isso envolve a gravação do código em um desses idiomas e, em seguida, a invocação do código a partir de uma política específica para a linguagem. Para saber mais, consulte Como incorporar código processual.