Sie sehen sich die Dokumentation zu Apigee Edge an.
Sehen Sie sich die Apigee X-Dokumentation an. info
Sie können die in Apigee Edge enthaltenen Richtlinien verwenden, um die Nachrichten zu ändern, die durch Ihre API-Proxys gesendet werden. Mit Richtlinien können Sie Folgendes tun:
- Nachrichten in andere Formate umwandeln, z. B. von XML in JSON
- Legen Sie Variablenwerte aus dem Nachrichteninhalt fest und erstellen Sie Nachrichten aus Variablenwerten.
- Verwenden Sie prozeduralen Code wie JavaScript, Java und Python, um Nachrichten und Daten auf komplexere Weise zu verarbeiten.
Wenn Sie diese Richtlinien verwenden, geben Sie die Eingabe und Ausgabe als Ablaufvariablen an. Zur Laufzeit ruft Apigee Edge den Eingabewert aus einer Quellvariable ab und schreibt den Ausgabewert in eine Ausgabevariable.
In diesem Thema werden diese Funktionen vorgestellt. Umfassendere und technische Informationen finden Sie in den jeweiligen Richtlinienreferenzen.
Einfache Handhabung für XML und JSON
Apigee Edge enthält Richtlinien, die die Konvertierung zwischen XML und JSON und die Umwandlung von XML mit XSL erleichtern.
JSON in XML konvertieren
Die JSON-zu-XML-Richtlinie übernimmt die JSON-Eingabe und konvertiert sie in XML.
Im folgenden Richtlinienbeispiel wird mit der Richtlinie eine Nachricht im JSON-Format aus der Variable request
genommen und dann der Variablenwert durch eine XML-formatierte Nachricht ersetzt.
Die Eingabe wird im Element <Source>
angegeben, während die Ausgabe im Element <OutputVariable>
angegeben wird.
<JSONToXML name="jsontoxml"> <Source>request</Source> <OutputVariable>request</OutputVariable> </JSONToXML>
XML in JSON konvertieren
Die Richtlinie für XML zu JSON konvertiert die XML-Eingabenachricht in JSON.
Im folgenden Richtlinienbeispiel wird von der Richtlinie eine Nachricht im XML-Format aus der Variable response
genommen. Anschließend wird der Variablenwert durch eine mit JSON formatierte Nachricht ersetzt.
Die Eingabe wird im Element <Source>
angegeben, während die Ausgabe im Element <OutputVariable>
angegeben wird.
<XMLToJSON name="ConvertToJSON"> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
XML mit XSL umwandeln
Sie können die XSL-Transformationsrichtlinie verwenden, um Nachrichten mit XSL zu transformieren. Nach der Konvertierung einer JSON-Nutzlast in XML können Sie beispielsweise die XSL-Transformationsrichtlinie mit einem Stylesheet verwenden, um die gewünschte Transformation durchzuführen.
Im folgenden Richtlinienbeispiel wird von der Richtlinie eine Nachricht im XML-Format aus der Variable response
genommen. Anschließend wird der Variablenwert durch eine mit my_transform.xsl
formatierte Nachricht ersetzt. Die Eingabe wird im Element <Source>
angegeben, während die Ausgabe im Element <OutputVariable>
angegeben wird.
<XSL name="TransformXML"> <ResourceURL>xsl://my_transform.xsl</ResourceURL> <Source>response</Source> <OutputVariable>response</OutputVariable> </XSL> <Source>request</Source> <ResourceURL>xsl://XSL-Transform-1.xsl</ResourceURL> <OutputVariable/>
Variablendaten verarbeiten
Die Datenverarbeitung innerhalb eines Proxys umfasst häufig die Arbeit mit Statusdaten als Ablaufvariablenwerte. Dazu können Sie häufig eine Richtlinie verwenden, mit der Variablenwerte abgerufen oder festgelegt werden. Beispielsweise können Sie Variablenwerte in eine Nachricht formatieren oder den Inhalt einer Nachricht extrahieren, um Variablenwerte festzulegen.
Achten Sie dabei auf Referenzen zu den folgenden zwei Richtlinien:
- AssignMessage-Richtlinie zum Erstellen von Nachrichten aus Variablenwerten.
- ExtractVariables-Richtlinie, um Variablen aus dem Nachrichteninhalt zuzuweisen.
Komplexere Transformationen erstellen
Für die Datenverarbeitung, bei der die Komplexität über die eingebauten Richtlinien hinausgeht, können Sie Programmiersprachen wie JavaScript, Java oder Python verwenden.
Dazu muss Code in einer dieser Sprachen geschrieben und der Code dann mit einer für die Sprache spezifischen Richtlinie aufgerufen werden. Weitere Informationen finden Sie unter Verfahrenscode einbinden.