Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Die ParsePayload-Richtlinie extrahiert logische Vorgänge aus strukturierten Anfragenutzlasten (z. B. JSON-RPC 2.0) in Ablaufvariablen. Mit dieser Funktion kann der Proxyadministrator bedingte Routinglogik direkt auf Grundlage der Inhalte von Clientanfragen implementieren, anstatt auf grundlegenden Ressourcenpfaden oder Abfrageparametern.
Diese Richtlinie ist eine erweiterbare Richtlinie, deren Verwendung je nach Apigee-Lizenz Auswirkungen auf die Kosten oder die Nutzung haben kann. Informationen zu Richtlinientypen und Auswirkungen auf die Nutzung finden Sie unter Richtlinientypen.
<ParsePayload>-Element
Gibt Validierungsparameter für das Parsing an, die auf Zyklen zur Auswertung der Anwendungslogik angewendet werden.
| Erforderlich/Optional? | Erforderlich |
| Übergeordnetes Element | – |
| Untergeordnete Elemente |
<Source><PayloadType><Protocol>
|
Syntax
Das ParsePayload-Element verwendet die folgende Syntax:
<ParsePayload continueOnError="[false|true]" enabled="[true|false]" name="policy_name"> <Source>request</Source> <PayloadType>JSON-RPC-2.0</PayloadType> <Protocol>MCP</Protocol> </ParsePayload>
Beispiel
Das folgende Beispiel zeigt eine Standardkonfiguration für die ParsePayload-Richtlinie:
<ParsePayload continueOnError="false" enabled="true" name="parse-payload-mcp"> <Source>request</Source> <PayloadType>JSON-RPC-2.0</PayloadType> <Protocol>MCP</Protocol> </ParsePayload>
<Source>
Gibt den Kontext des Anfrage-/Antwortcontainers an, der sofort durch Laufzeitauswertungen verarbeitet wird.
<Source>request</Source>
| Attribut | Beschreibung | Standard | Präsenz |
|---|---|---|---|
| – | Wert des Textknotens. Muss request oder response sein. |
request |
Optional |
<PayloadType>
Steuert die allgemeinen Auswertungsstrukturen, die in Bezug auf die Datenverarbeitungsanforderungen erkannt werden.
<PayloadType>JSON-RPC-2.0</PayloadType>
| Attribut | Beschreibung | Standard | Präsenz |
|---|---|---|---|
| – | Wert des Textknotens. Unterstützte Werte: JSON-RPC-2.0. |
– | Erforderlich |
<Protocol>
Bestimmt Formatierungsverhalten, das genau mit den Deklarationen der Zieloberfläche übereinstimmt.
<Protocol>MCP</Protocol>
| Attribut | Beschreibung | Standard | Präsenz |
|---|---|---|---|
| – | Wert des Textknotens. Unterstützter Wert: MCP. |
– | Erforderlich |
Extrahierte Ablaufvariablen
Nach dem Parsing werden die folgenden vordefinierten Ablaufvariablen basierend auf der Nutzlast gefüllt.
| Variablenname | Beschreibung |
|---|---|
apigee.payload.operation |
Erstellte Ausführungs-ID.
|
apigee.payload.json-rpc.request.method |
Das Feld method aus der JSON-RPC-Anfrage (z.B. tools/call oder tools/list). |
apigee.payload.json-rpc.request.id |
Das Feld id aus der JSON-RPC-Anfrage. |
apigee.payload.json-rpc.request.params.name |
Das Feld name in params (für tools/call ausgefüllt, um das Tool zu identifizieren). |
apigee.payload.json-rpc.request.params.arguments.{arg_name} |
Argumente, die im Objekt arguments übergeben werden. Stringwerte werden direkt gespeichert. Verschachtelte Objekte oder Arrays werden als serialisierte JSON-Strings gespeichert. |
Beispiel
Für die folgende JSON-RPC-Anfragenutzlast mit einfachen Argumenten:
{ "jsonrpc": "2.0", "id": "req_001", "method": "tools/call", "params": { "name": "get_weather", "arguments": { "location": "San Francisco, CA", "forecast_days": 3 } } }
Die Richtlinie füllt die folgenden Variablen aus:
| Variable | Wert |
|---|---|
apigee.payload.operation |
tools/call/get_weather |
apigee.payload.json-rpc.request.method |
tools/call |
apigee.payload.json-rpc.request.id |
req_001 |
apigee.payload.json-rpc.request.params.name |
get_weather |
apigee.payload.json-rpc.request.params.arguments.location |
San Francisco, CA |
apigee.payload.json-rpc.request.params.arguments.forecast_days |
3 |