Analisi
Utilizzare la politica Analizza per controllare l'analisi di un documento di input. Quando il documento di input è una stringa JSON, questa viene analizzata invece che sovrascritta.
| Gateway | Versione politica |
|---|---|
| DataPower® API Gateway | 2.0.0 2.1.0 (DataPower API Gateway Versione 10.0.3.0 o successiva) 2.2.0 (DataPower API Gateway Versione 10.5.0.5 o successiva) |
Questo argomento descrive come configurare il criterio nell'interfaccia utente di Assembly; per ulteriori dettagli su come configurare il criterio nel codice sorgente di OpenAPI, consultare la sezione "parse".
Informazioni su Analisi
- Specifica una configurazione di impostazioni di analisi valida da cui richiamare le sue proprietà come impostazioni di analisi predefinite.Nota: se si modifica il nome predefinito, è necessario configurare separatamente un oggetto ParseSettings corrispondente su DataPower API Gateway.
- Specifica una stringa letterale come proprietà XML o JSON serializzate come impostazioni di analisi. Queste proprietà hanno la precedenza rispetto alle proprietà predefinite esistenti. La stringa letterale deve essere formattata XML o JSON.
- Il formato XML è
"<ParseSettings><propertyName>propertyValue</propertyName></ParseSettings>". - Il formato JSON è
"{ \"ParseSettings\" : { \"propertyName\" : propertyValue } }".
- Il formato XML è
- Un URL che rappresenta un contesto denominato da cui richiamare le proprietà XML o JSON serializzate come impostazioni di analisi. Queste proprietà hanno la precedenza rispetto alle proprietà predefinite o ai valori letterali esistenti.
Proprietà
La seguente tabella elenca le proprietà della politica, indica se una proprietà è obbligatoria, specifica i valori validi e predefiniti per l'input e specifica il tipo di dati dei valori.
| Etichetta proprietà | Obbligatorio | Descrizione | Tipo di dati |
|---|---|---|---|
| Titolo | N | Il titolo della politica. Il valore predefinito è |
stringa |
| Descrizione | N | Una descrizione della politica. | stringa |
| Utilizza tipo di contenuto | N | Se questa impostazione è abilitata e l'impostazione di analisi è configurata per rilevare il tipo di documento, l'operazione di analisi utilizza il Content-Type specificato nelle intestazioni della richiesta.Se questa impostazione è abilitata e il tipo di documento nell'impostazione di analisi è configurato per JSON o XML, l'operazione di analisi utilizza il L'abilitazione di questa impostazione è applicabile solo quando il Se questa impostazione non è abilitata, l'operazione di analisi utilizza il tipo di documento specificato nell'impostazione di analisi o il tipo di documento rilevato se l'impostazione di analisi è configurata per rilevare il tipo di documento. Per impostazione predefinita, la casella di controllo non è selezionata. |
booleano |
| Riferimento oggetto delle impostazioni di analisi | N | Un oggetto valido esistente da cui richiamare i valori di proprietà predefiniti per l'oggetto dinamico. | stringa |
| Tipo di documento | N | Il tipo di documento da analizzare. Selezionare una delle seguenti opzioni:
Le variabili di query in una richiesta GET possono essere inviate come stringa JSON in un parametro di query denominato |
stringa |
| Dimensione massima del documento | N | Facoltativamente, la dimensione massima del documento in byte di un documento di input JSON, XML o GraphQL accettato dall'operazione di analisi. Questa impostazione garantisce la protezione dalle minacce applicando un limite massimo alla dimensione dei documenti. Inserisci un valore compreso tra 0 e 5368709121. Un documento viene rifiutato quando la sua dimensione supera quella massima consentita. Il valore 0 indica che la dimensione del documento non è limitata. Se impostato su 0, il risultato dell'operazione non restituisce la dimensione del documento. Il valore predefinito è 4194304. |
intero |
| Profondità di nidificazione massima | N | Facoltativamente, la profondità massima di nidificazione di un messaggio XML, JSON o GraphQL che l'operazione di analisi accetta. Questa impostazione garantisce la protezione dalle minacce applicando dei limiti al messaggio.
Inserisci un valore compreso tra 0 e 4096. Un documento viene rifiutato quando la sua profondità di nidificazione supera quella massima consentita. Il valore 0 indica una profondità di nidificazione illimitata. Se impostato su 0, il risultato dell'operazione non restituisce la profondità di nidificazione. Il valore predefinito è 512. |
intero |
| Larghezza massima | N | Facoltativamente, la larghezza massima del payload accettata dall'operazione di analisi.
Inserisci un valore compreso tra 0 e 65535. Il documento viene rifiutato quando la sua larghezza supera quella massima consentita. Il valore 0 indica una larghezza illimitata. Se impostato su 0, il risultato dell'operazione non restituisce la larghezza del documento. Il valore predefinito è 4096. |
intero |
| Lunghezza massima del nome | N | Facoltativamente, la lunghezza massima del nome in byte in un documento che l'operazione di analisi accetta.
La lunghezza include eventuali spazi bianchi contenuti tra i tag in XML o tra le virgolette in JSON. Inserisci un valore compreso tra 0 e 8192. Un documento viene rifiutato quando la lunghezza del suo nome supera la lunghezza massima consentita. Il valore 0 indica una lunghezza illimitata del nome. Quando è impostato su 0, il risultato dell'operazione non restituisce la lunghezza del nome di un documento. Il valore predefinito è 256. |
intero |
| Lunghezza massima del valore | N | Facoltativamente, la lunghezza massima del valore in byte in un documento che l'operazione di analisi accetta.
La lunghezza include eventuali spazi bianchi contenuti tra i tag in XML o tra le virgolette in JSON. Inserisci un valore compreso tra 0 e 5368709121. Un documento viene rifiutato quando la lunghezza del suo valore supera la lunghezza massima. Il valore 0 indica una lunghezza illimitata. Se impostato su 0, il risultato dell'operazione non restituisce la lunghezza del valore di un documento. Il valore predefinito è 8192. |
intero |
| Numero massimo di nomi univoci | N | Facoltativamente, il numero massimo di nomi univoci in un documento JSON o XML accettato dall'operazione di analisi.
Inserisci un valore compreso tra 0 e 1048575. Un documento viene rifiutato quando il numero di nomi univoci in esso contenuti supera il numero massimo consentito. Il valore 0 indica un numero illimitato di nomi univoci. Se impostato su 0, il risultato dell'operazione non restituisce il numero di nomi univoci in un documento. Il valore predefinito è 1024. |
intero |
| Numero massimo di prefissi univoci | N | Facoltativamente, il numero massimo di prefissi dello spazio dei nomi XML univoci in un documento accettato dall'operazione di analisi. Tale limite conteggia più prefissi definiti per lo stesso spazio dei nomi, ma non conteggia più spazi dei nomi definiti in parti differenti del documento di input in un singolo prefisso. Inserisci un valore compreso tra 0 e 262143. Un documento viene rifiutato quando il numero di prefissi univoci in esso contenuti supera il numero massimo consentito. Il valore 0 indica un numero illimitato di prefissi univoci. Quando è impostato su 0, il risultato dell'operazione non restituisce il numero di prefissi univoci in un documento. Il valore predefinito è 1024. |
intero |
| Numero massimo di spazi dei nomi univoci | N | Facoltativamente, il numero massimo di URI dello spazio dei nomi XML univoci accettati dall'operazione di analisi. Tale limite conteggia tutti gli spazi dei nomi XML, indipendentemente dal numero di prefissi utilizzati per dichiararli. Inserisci un valore compreso tra 0 e 65535. Un documento viene rifiutato quando il numero di spazi dei nomi univoci in esso contenuti supera il numero massimo consentito. Il valore 0 indica un numero illimitato di spazi dei nomi univoci. Se impostato su 0, il risultato dell'operazione non restituisce il numero di spazi dei nomi univoci in un documento. Il valore predefinito è 1024. |
intero |
| Lunghezza massima del numero | N | Facoltativamente, il numero massimo di byte nella parte del valore di una coppia etichetta - valore JSON quando il valore è un numero. Il numero deve essere una sequenza contigua di byte che non contenga spazi. Il numero può contenere un segno meno e un esponente positivo o negativo. Inserisci un valore compreso tra 0 e 256. Un documento viene rifiutato quando il numero di caratteri in esso contenuti supera la lunghezza massima consentita. Il valore 0 indica una lunghezza illimitata. Quando è impostato su 0, il risultato dell'operazione non restituisce la lunghezza del numero in un documento. Il valore predefinito è 128. |
intero |
| Configurazione del valore letterale delle impostazioni di analisi | N | Una stringa letterale come proprietà JSON o XML serializzate unite nell'oggetto dinamico. Queste proprietà preferiscono le proprietà predefinite esistenti. | stringa |
| Riferimento URL delle impostazioni di analisi | N | Un " URL " che rappresenta un contesto denominato da cui recuperare le proprietà serializzate XML o JSON che vengono unite nell'oggetto dinamico. Queste proprietà hanno la preferenza su qualsiasi valore letterale esistente o proprietà predefinite. | stringa |
| Messaggi per l'analisi | N | Il nome di una variabile nel contesto dell'API. Il contenuto del campo body della variabile è l'input della politica. Il nome predefinito della variabile è message. |
stringa |
| Messaggio per i dati analizzati risultanti | N | Il nome di una variabile nel contesto dell'API. Il contenuto del campo corpo della variabile è l'output dell'operazione di analisi. Le metriche di analisi del documento analizzato possono essere memorizzate in differenti parti del messaggio. Il nome della variabile predefinito è uguale al nome di input, quindi per impostazione predefinita il messaggio di input viene sovrascritto dal messaggio di output. | stringa |
Utilizzare l'origine YAML per impostare la seguente opzione.
| Proprietà | Obbligatorio | Descrizione | Tipo di dati |
|---|---|---|---|
| strict-utf8-encoding | N | Per i documenti JSON, indica se applicare la codifica rigorosa UTF-8 in tutto il documento.
Il valore predefinito è |
booleano |
- Limitazione dei criteri di analisi
- La proprietà
literalnella politica di parsing non supporta variabili o parametri di contesto. Deve essere una stringa fissa.
- La proprietà
For 10.0.5.3, the strict UTF-8 option is supported only in the YAML, not in the APIM UI. When it is added to the UI, remove the following table and add strict UTF-8 to the properties table.