Questa pagina si applica ad Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
Puoi utilizzare i criteri inclusi in Apigee per manipolare i messaggi che scorrono attraverso i proxy API. Con i criteri puoi:
- Converti i messaggi tra formati, ad esempio da XML a JSON.
- Imposta i valori delle variabili dal contenuto del messaggio e crea messaggi dai valori delle variabili.
- Utilizza codice procedurale, come JavaScript, Java e Python, per gestire messaggi e dati in modi più complessi.
In generale, quando utilizzi queste norme, specifichi l'input e l'output come variabili di flusso. In fase di runtime, Apigee recupera il valore di input da una variabile di origine e scrive il valore di output in una variabile di output.
Questo argomento introduce queste funzionalità. Per informazioni più complete e tecniche, consulta i riferimenti alle norme per ciascuna.
Gestione semplice di XML e JSON
Apigee include criteri che semplificano la conversione tra XML e JSON e la trasformazione di XML con XSL.
Conversione di JSON in XML
Il criterio JSONtoXML prende l'input JSON e lo converte in XML.
Nel seguente esempio di policy, la policy accetta un messaggio in formato JSON dalla variabile request
, quindi sostituisce il valore della variabile con un messaggio in formato XML.
L'input è specificato nell'elemento <Source>
, mentre l'output è specificato
nell'elemento <OutputVariable>
.
<JSONToXML name="jsontoxml"> <Source>request</Source> ---> INPUT <OutputVariable>request</OutputVariable> OUTPUT ---> </JSONToXML>
Conversione di XML in JSON
Il criterio XMLtoJSON converte il messaggio di input XML in JSON.
Nel seguente esempio di policy, la policy accetta un messaggio in formato XML dalla variabile response
, quindi sostituisce il valore della variabile con un messaggio in formato JSON.
L'input è specificato nell'elemento <Source>
, mentre l'output è specificato
nell'elemento <OutputVariable>
.
<XMLToJSON name="ConvertToJSON"> <Source>response</Source> ---> INPUT <OutputVariable>response</OutputVariable> OUTPUT ---> </XMLToJSON>
Trasformazione di XML con XSL
Puoi utilizzare il criterio XSLTransform per trasformare i messaggi utilizzando XSL. Ad esempio, dopo aver convertito un payload JSON in XML, puoi utilizzare il criterio di trasformazione XSL con un foglio di stile per eseguire la trasformazione che ti serve.
Nell'esempio di criterio riportato di seguito, il criterio accetta un messaggio in formato XML dalla variabile
response
, poi sostituisce il valore della variabile con un messaggio formattato da
my_transform.xsl
. L'input è specificato nell'elemento <Source>
,
mentre l'output è specificato nell'elemento <OutputVariable>
.
<XSL name="TransformXML"> <Source>response</Source> ---> INPUT <ResourceURL>xsl://my_transform.xsl</ResourceURL> --TRANSFORMER-- <OutputVariable>response</OutputVariable> OUTPUT ---> </XSL>
Gestione dei dati delle variabili
La gestione dei dati all'interno di un proxy spesso comporta semplicemente l'utilizzo dei dati di stato come valori delle variabili di flusso. Spesso puoi farlo utilizzando un criterio che recupera o imposta i valori delle variabili. Ad esempio, potresti voler formare un messaggio con i valori delle variabili o estrarre i contenuti di un messaggio per impostare i valori delle variabili.
Assicurati di consultare i riferimenti per le seguenti due norme:
- Criterio AssignMessage per creare messaggi dai valori delle variabili.
- ExtractVariables per assegnare variabili dai contenuti del messaggio.
Creare trasformazioni più complesse
Per la gestione dei dati la cui complessità va oltre le capacità delle norme incluse, puoi utilizzare linguaggi procedurali come JavaScript, Java o Python.
In genere, ciò comporta la scrittura di codice in uno di questi linguaggi, quindi l'invocazione del codice da un criterio specifico per la lingua. Per saperne di più, vedi Incorporamento del codice procedurale.