Questa pagina si applica ad Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
Il criterio ParsePayload estrae le operazioni logiche dai payload delle richieste strutturate (come JSON-RPC 2.0) nelle variabili del flusso di messaggi. Questa funzionalità consente all'amministratore proxy di implementare la logica di routing condizionale direttamente in base ai contenuti della richiesta del client anziché ai percorsi delle risorse di base o ai parametri di ricerca.
Queste norme sono estendibili e il loro utilizzo potrebbe avere implicazioni in termini di costi o di utilizzo, a seconda della licenza Apigee. Per informazioni sui tipi di norme e sulle implicazioni di utilizzo, consulta Tipi di norme.
Elemento <ParsePayload>
Specifica le proprietà di analisi della convalida applicate ai cicli di valutazione della logica dell'applicazione.
| Obbligatorio? | Obbligatorio |
| Elemento padre | n/a |
| Elementi secondari |
<Source><PayloadType><Protocol>
|
Sintassi
L'elemento ParsePayload utilizza la seguente sintassi:
<ParsePayload continueOnError="[false|true]" enabled="[true|false]" name="policy_name"> <Source>request</Source> <PayloadType>JSON-RPC-2.0</PayloadType> <Protocol>MCP</Protocol> </ParsePayload>
Esempio
L'esempio seguente mostra una configurazione standard per la policy ParsePayload:
<ParsePayload continueOnError="false" enabled="true" name="parse-payload-mcp"> <Source>request</Source> <PayloadType>JSON-RPC-2.0</PayloadType> <Protocol>MCP</Protocol> </ParsePayload>
<Source>
Indica il contesto del container di richiesta/risposta elaborato immediatamente tramite le valutazioni di runtime.
<Source>request</Source>
| Attributo | Descrizione | Predefinito | Presenza |
|---|---|---|---|
| N/D | Valore del nodo di testo. Deve essere request o response. |
request |
Facoltativo |
<PayloadType>
Regolano le strutture di valutazione complessive riconosciute in merito ai requisiti di trattamento dei dati.
<PayloadType>JSON-RPC-2.0</PayloadType>
| Attributo | Descrizione | Predefinito | Presenza |
|---|---|---|---|
| N/D | Valore del nodo di testo. Valori supportati: JSON-RPC-2.0. |
N/D | Obbligatorio |
<Protocol>
Determina i comportamenti di formattazione corrispondenti esattamente alle dichiarazioni dell'interfaccia di destinazione.
<Protocol>MCP</Protocol>
| Attributo | Descrizione | Predefinito | Presenza |
|---|---|---|---|
| N/D | Valore del nodo di testo. Valore supportato: MCP. |
N/D | Obbligatorio |
Variabili di flusso estratte
Le routine di post-parsing compilano le seguenti variabili di flusso predefinite in base al payload.
| Nome variabile | Descrizione |
|---|---|
apigee.payload.operation |
Identificatore di esecuzione creato.
|
apigee.payload.json-rpc.request.method |
Il campo method della richiesta JSON-RPC (ad es. tools/call o tools/list). |
apigee.payload.json-rpc.request.id |
Il campo id della richiesta JSON-RPC. |
apigee.payload.json-rpc.request.params.name |
Il campo name all'interno di params (compilato per tools/call per identificare lo strumento). |
apigee.payload.json-rpc.request.params.arguments.{arg_name} |
Argomenti passati nell'oggetto arguments. I valori stringa vengono archiviati direttamente; gli oggetti o gli array nidificati vengono archiviati come stringhe JSON serializzate. |
Esempio
Per il seguente payload della richiesta JSON-RPC con argomenti semplici:
{ "jsonrpc": "2.0", "id": "req_001", "method": "tools/call", "params": { "name": "get_weather", "arguments": { "location": "San Francisco, CA", "forecast_days": 3 } } }
Il criterio compila le seguenti variabili:
| Variabile | Valore |
|---|---|
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 |