Variabili di sostituzione substitution-variables

Le variabili di sostituzione vengono utilizzate per trasferire i valori dall’URL della richiesta ai modelli di composizione memorizzati nei cataloghi di immagini. Le variabili possono anche essere utilizzate per trasmettere lo stesso valore in posizioni diverse in una richiesta complessa.

$ *var*= *valore*

var
Nome della variabile.
valore
Valore al quale deve essere impostata la variabile (stringa).

Definizioni di variabili e riferimenti possono verificarsi nella parte query della richiesta, in catalog::Modifier, e in catalog::PostModifier.

Le variabili sono definite come sopra, in modo simile ad altri comandi IS; l'iniziale '$' identifica il comando come definizione di variabile. Le variabili devono essere definite prima di essere referenziate.

Nome della variabile var non fa distinzione tra maiuscole e minuscole e può essere costituito da qualsiasi combinazione di lettere ASCII, numeri, "-", "_" e ".".

NOTE
value deve essere codificata in URL a passaggio singolo per una trasmissione HTTP sicura. È necessaria la doppia codifica se value viene ritrasmesso tramite HTTP. Questo avviene quando value viene sostituito in una richiesta esterna nidificata o nell’attributo href di un SVG <image> elemento.

I riferimenti di variabile sono costituiti dal nome della variabile delimitato da '$' iniziale e finale ($)var$). I riferimenti possono verificarsi in qualsiasi punto della porzione di valore di qualsiasi comando IS, ovvero tra '=' dopo il nome del comando e il successivo '&' o la fine della richiesta. Le variabili personalizzate non possono essere applicate al layer= e effect= comandi. Più variabili sono consentite nello stesso valore di comando. Il server sostituisce ogni occorrenza di $ *var*$ con value.

I riferimenti di variabile non possono essere nidificati. Qualsiasi occorrenza di $ *var*$ entro value non vengono sostituiti.

Ad esempio, il frammento di richiesta:

$var2=apple&$var1=my$var2$tree&text=$var1$

si risolve in:

text=my$var2$tree

NOTE
'$' non è un carattere riservato. È possibile che la richiesta non contenga alcun carattere riservato. Ad esempio: src=my$image$file.tif è un comando valido (supponendo che una voce di catalogo o un file di immagine denominato my$image$file.tif esiste), mentre wid=$number$ non lo è, perché wid richiede un argomento numerico.

Elaborazione delle variabili nelle richieste nidificate section-26d63adc446c4fa0808e11e8082abdfa

$ *var*$ I riferimenti possono verificarsi ovunque all’interno delle parentesi graffe di una richiesta di Image Server o Image Rendering nidificata, incluso a sinistra di "?" separazione del percorso dalla query. Il server sostituisce questi riferimenti con valori (provenienti dall’URL o da catalog::Modifier del catalogo principale delle immagini) prima di analizzare ed elaborare ulteriormente la richiesta nidificata.

Inoltre, tutti $ *var*= definizioni dall’url o catalog::Modifier vengono inoltrate a tutte le richieste nidificate di Image Server e Image Rendering. In questo modo tutte le definizioni di variabili sono disponibili per tutti i modelli, indipendentemente dal livello di nidificazione.

Indipendentemente dal livello di nidificazione, solo la codifica HTTP a passata singola deve essere applicata ai valori delle variabili che devono essere sostituiti ovunque nelle richieste di Image Rendering o Image Server nidificate o nelle relative richieste associate catalog::Modifier stringhe.

Elaborazione delle variabili nelle richieste esterne incorporate section-314e39a9aefb46faa737fd137897d1b0

$ *var*$ i riferimenti che si verificano in qualsiasi punto all’interno delle parentesi graffe di una richiesta esterna incorporata vengono sostituiti con i valori di definizione delle variabili corrispondenti. Questo consente di inserire richieste esterne incorporate in un modello in un catalogo immagini.

I valori delle variabili da sostituire in richieste esterne in genere devono avere una doppia codifica, poiché non viene applicata alcuna nuova codifica prima che il server tenti di trasmettere l’URL esterno finale.

Elaborazione variabile in file SVG section-a8359f9909764142b6a18ae778dca913

$ *var*$ è possibile che nei file SVG vengano inseriti riferimenti nei valori degli attributi e in <text> stringhe. Image Server sostituisce questi elementi con i corrispondenti $ *var*= definizioni note al livello di nidificazione della richiesta in cui è specificato il file SVG.

NOTE
Qualsiasi valore di variabile da sostituire in un href il valore dell’attributo deve avere una doppia codifica URL; tutti gli altri devono avere una singola codifica.

Variabile di percorso predefinita section-930d0dd12e8f49499becc9fe8df24092

Il object specificato nel percorso della richiesta viene assegnato alla variabile predefinita *$object*. ' $ *oggetto*$" può essere posizionato ovunque nella richiesta, nel modello a cui fa riferimento la richiesta o in una richiesta nidificata/incorporata dove tale oggetto è consentito, incluso il valore di src= e mask=e il percorso di una richiesta nidificata/incorporata.

Ad esempio, la seguente richiesta riutilizza l’immagine specificata nel percorso come origine di un livello in una richiesta nidificata:

/is/image/a/b?…&layer=3&src=is{…&src=$object$}&…

Equivale a

/is/image/a/b?…&layer=3&src=is{…&src=a/b}&…

La definizione di *$object* può essere ignorato specificando esplicitamente $ *oggetto*= con il valore desiderato.

La variabile di percorso predefinita viene comunemente utilizzata insieme a template=.

Predefinito section-b02483d15529444586a2e9504805b155

Nessuno. Solo le variabili definite vengono sostituite dal server, ad eccezione della variabile di percorso predefinita $object, che viene sempre sostituita. Qualsiasi occorrenza di $ *var*$ rimani letterale se *var*non può corrispondere a una definizione di variabile esistente.

Esempi section-fba9393df6984247b7e30b3f93992e86

Vedi "Esempio A" in Modelli.

Consultate anche section-11b44cc824744f70b1705ebdd9ec4fe6

Modelli, template= modello

recommendation-more-help
a26166cd-f2f4-45ce-996d-96a0f0d6cf49