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é a percorsi di risorse o parametri di ricerca di base.
Queste norme sono estensibili e il loro utilizzo potrebbe avere implicazioni in termini di costi o di utilizzo, a seconda della licenza Apigee. Per informazioni sui tipi di policy e sulle implicazioni di utilizzo, consulta Tipi di policy.
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 contenitore di richiesta/risposta elaborato immediatamente tramite le valutazioni del 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 |