Riferimento per le variabili di flusso

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
informazioni

Questa sezione fornisce informazioni di riferimento sulle variabili di flusso.

Apigee Edge definisce le seguenti variabili di flusso:

apigee              loadbalancing        router
apiproxy            message              servicecallout
application         messageid            system
client              organization         target
current             proxy                variable
environment         request              virtualhost
error               response
is                  route

Ognuna di queste variabili è descritta nelle sezioni seguenti.

apigee

Una variabile helper che fornisce informazioni sulla data/ora di esecuzione del criterio.

La tabella seguente descrive le proprietà della variabile apigee:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
apigee.metrics.policy.policy_name.timeTaken Numero intero Sola lettura Il tempo, in nanosecondi, impiegato dal criterio per essere eseguito. Policy Controller

apiproxy

Descrive il proxy API.

La tabella seguente descrive le proprietà della variabile apiproxy:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
apiproxy.name Stringa Sola lettura Nome del proxy API. Ad esempio, "My Proxy" (Il mio proxy). Richiesta proxy
apiproxy.revision Stringa Sola lettura Il numero di revisione di un proxy API. Ad esempio, "6". Richiesta proxy

Per saperne di più sull'utilizzo dei proxy API, consulta la pagina Informazioni sulle API e sui proxy API.

application

Un contenitore per la proprietà application.basepath.

La tabella seguente descrive le proprietà della variabile application:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
application.basepath Stringa Sola lettura Il percorso di base del deployment (specificato durante il deployment dell'API). Richiesta proxy

client

L'applicazione o il sistema che ha inviato una richiesta al router Edge.

La tabella seguente descrive le proprietà della variabile client:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
client.cn Stringa Sola lettura

Il nome comune specificato nel certificato TLS/SSL presentato dall'app client.

Richiesta proxy
client.country Stringa Sola lettura

Il paese indicato nel certificato TLS/SSL presentato dall'app client.

Richiesta proxy
client.email.address Stringa Sola lettura

L'indirizzo email nel certificato TLS/SSL presentato dall'app client.

Richiesta proxy
client.host Stringa Sola lettura

L'IP dell'host HTTP associato alla richiesta ricevuta da ProxyEndpoint.

Richiesta proxy
client.ip Stringa Sola lettura

L'indirizzo IP del client o del sistema che invia il messaggio al router perimetrale. Ad esempio, potrebbe trattarsi dell'IP client originale o di un IP del bilanciatore del carico.

Richiesta proxy
client.locality Stringa Sola lettura

La località (città) nel certificato TLS/SSL presentato dal client.

Richiesta proxy
client.organization Stringa Sola lettura L'organizzazione nel certificato TLS/SSL presentato dal client. (non necessariamente equivalente all'organizzazione su Apigee Edge). Richiesta proxy
client.organization.unit Stringa Sola lettura

L'unità organizzativa nel certificato TLS/SSL presentato dal client.

Richiesta proxy
client.port Numero intero Sola lettura

La porta HTTP associata alla richiesta del client di origine per ProxyEndpoint.

Richiesta proxy
client.received.end.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui il proxy ha terminato di ricevere la richiesta dal client di origine in ProxyEndpoint. Ad esempio: mer, 21 ago 2013 19:16:47 UTC.

Questo valore temporale è la rappresentazione in formato stringa della quantità del timestamp a 32 bit corrispondente. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC" corrisponde al valore del timestamp 1377112607413.

Richiesta proxy
client.received.end.timestamp Lungo Sola lettura

Il valore del timestamp che specifica quando il proxy ha terminato di ricevere la richiesta dal client di origine in ProxyEndpoint. Questo valore è un numero intero a 64 bit (lungo) contenente il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC.

Richiesta proxy
client.received.start.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui il proxy ha iniziato a ricevere la richiesta dal client di origine in ProxyEndpoint. Ad esempio: mer, 21 Aug 2013 19:16:47 UTC

Questo valore temporale è la rappresentazione in formato stringa della quantità del timestamp a 32 bit corrispondente. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC" corrisponde al valore del timestamp 1377112607413.

Richiesta proxy
client.received.start.timestamp Lungo Sola lettura

Il valore del timestamp che specifica quando il proxy ha iniziato a ricevere la richiesta dal client di origine in ProxyEndpoint. Questo valore è un numero intero a 64 bit (lungo) contenente il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC.

Richiesta proxy
client.scheme Stringa Sola lettura

Restituisce http o https a seconda del trasporto utilizzato dall'app client per inviare il messaggio di richiesta.

Richiesta proxy
client.sent.end.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui il proxy ha terminato l'invio della risposta da ProxyEndpoint al client. Ad esempio: "Mer 21 ago 2013 19:16:47 UTC".

Questo valore è una rappresentazione stringa del corrispondente client.sent.end.timestamp a 32 bit. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di 1377112607413.

PostClientFlow
client.sent.end.timestamp Lungo Sola lettura Il valore del timestamp che specifica quando ProxyEndpoint ha finito di restituire la risposta all'app client di origine. Questo valore è un numero intero a 64 bit (lungo) contenente il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC. PostClientFlow
client.sent.start.time Stringa Sola lettura L'ora, espressa in formato stringa, in cui ProxyEndpoint ha iniziato a restituire la risposta all'app client di origine. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC".

Questo valore è una rappresentazione stringa del corrispondente client.sent.start.timestamp a 32 bit. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di 1377112607413.

PostClientFlow
client.sent.start.timestamp Lungo Sola lettura Quando il proxy ha iniziato a inviare la risposta al client da ProxyEndpoint. Questo valore è espresso come un numero intero a 64 bit (lungo) contenente il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC. PostClientFlow
client.ssl.enabled Stringa Sola lettura

"true" se ProxyEndpoint è configurato per TLS/SSL, altrimenti "false".

Richiesta proxy
client.state Stringa Sola lettura

Lo stato del certificato TLS/SSL presentato dal client.

Richiesta proxy

current

Contiene informazioni sull'attuale flusso proxy API.

La tabella seguente descrive le proprietà della variabile current:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
current.flow.name Stringa Sola lettura Il nome del flusso attualmente in esecuzione (come "PreFlow", "PostFlow" o il nome di un flusso condizionale). Richiesta proxy
current.flow.description Stringa Sola lettura La descrizione del flusso attualmente in esecuzione. Corrisponde al valore dell'elemento <Description> nella configurazione XML del flusso. Richiesta proxy

Puoi visualizzare queste proprietà nella vista Trace dell'UI Edge. Tuttavia, queste proprietà non sono visibili per impostazione predefinita nella visualizzazione Trace dell'interfaccia utente classica.

environment

Un contenitore per la proprietà environment.name.

La tabella seguente descrive le proprietà della variabile environment:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
environment.name Stringa Sola lettura Nome dell'ambiente in cui è stata eseguita la transazione. Richiesta proxy

error

Un oggetto contestuale che rappresenta un messaggio di errore nel flusso di errore.

La tabella seguente descrive le proprietà della variabile error:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
error message Lettura/scrittura Errore di tipo message, che è un oggetto contestuale nel flusso di errori. Errore
error.content Stringa Lettura/scrittura Contenuto dell'errore. Errore
error.message Stringa Sola lettura

Messaggio associato a un errore, il cui valore è disponibile solo prima dell'esecuzione del flusso di errori.

Errore
error.status.code Numero intero Sola lettura

Il codice di stato HTTP associato all'errore. Ad esempio, "400".

Errore
error.reason.phrase Stringa Sola lettura

La frase del motivo associata all'errore. Ad esempio: "Richiesta non valida".

Errore
error.transport.message TransportMessage Sola lettura

Qualsiasi errore di tipo TransportMessage.

Errore
error.state Numero intero Sola lettura

Stato nel flusso in cui si è verificato un errore.

Errore
error.header.header_name Stringa Lettura/scrittura

Ottieni o imposta l'intestazione della risposta.

Errore

fault

Una variabile di flusso impostata su un codice di errore di runtime quando un criterio genera un errore. I valori dei codici di errore sono specifici di ciascun criterio.

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
fault.fault_name Stringa Sola lettura fault_name è il nome dell'errore, come descritto nella tabella Errori di runtime inclusa in ogni argomento dei riferimenti ai criteri. Errore

is

Un contenitore per la proprietà is.error.

La tabella seguente descrive le proprietà della variabile is:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
is.error Booleano Sola lettura

Flag di errore.

Richiesta proxy

loadbalancing

Fornisce informazioni sullo stato del bilanciamento del carico di TargetEndpoint.

La tabella seguente descrive le proprietà della variabile loadbalancing:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
loadbalancing.failedservers Array di stringhe Sola lettura

Elenco di TargetServers non riusciti durante il bilanciamento del carico a TargetEndpoint.

Risposta target
loadbalancing.isfallback Booleano Sola lettura

"true" se il fallback è abilitato per TargetServer richiamato durante il bilanciamento del carico in TargetEndpoint.

Risposta target
loadbalancing.targetserver Stringa Sola lettura

TargetServer richiamato durante il bilanciamento del carico a TargetEndpoint. Impostato solo se l'elemento <Path> viene impostato durante la definizione dell'elemento bilanciatore del carico.

Risposta target

message

Un oggetto contestuale con lo stesso valore di request nel flusso di richiesta, di response nel flusso di risposta o di error nel flusso di errori.

La tabella seguente descrive le proprietà della variabile message:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
message message Lettura/scrittura

Un oggetto contestuale con lo stesso valore di request nel flusso di richiesta o di response nel flusso di risposta o di error nel flusso di errori.

Richiesta proxy
message.content Stringa Lettura/scrittura

Contenuto della richiesta, risposta o messaggio di errore.

Richiesta proxy
message.formparam.param_name Stringa Lettura/scrittura

Valore del parametro di modulo specificato.

Richiesta proxy
message.formparam.param_name.
 values
Raccolta Sola lettura

Tutti i valori del parametro di modulo specificato nel messaggio.

Richiesta proxy
message.formparam.param_name.
 values.count
Numero intero Sola lettura

Conteggio dei valori dei parametri di modulo specificati nel messaggio./p>

Richiesta proxy
message.formparams.count Numero intero Sola lettura

Conteggio di tutti i parametri modulo nel messaggio.

Richiesta proxy
message.formparams.names Raccolta Sola lettura

Valore di tutti i parametri modulo nel messaggio.

Richiesta proxy
message.formstring Stringa Sola lettura

Valore della stringa del modulo nel messaggio.

Richiesta proxy
message.header.header_name Stringa Lettura/scrittura

Restituisce o imposta il valore dell'intestazione HTTP specificata nel messaggio. Se l'intestazione contiene una virgola, al momento della lettura riceverai solo il segmento di testo fino alla prima virgola. Se vuoi l'intestazione intera, utilizza il modulo request.header.header_name.
 values

Richiesta proxy
message.header.header_name.N Stringa Lettura/scrittura

Il valore dell'Nth specifico valore di intestazione nel messaggio, in richiesta o in risposta, a seconda dello stato del flusso. Apigee Edge suddivide i valori del testo dell'intestazione con una virgola. Tieni presente che l'indice il cui valore viene utilizzato per N è basato su 1, non su 0.

Ad esempio: se l'intestazione Cache-control è "public,maxage=16544", il valore restituito di message.header.cache-control.1 è "maxage=16544".

Richiesta proxy
message.header.header_name.
 values
Raccolta Sola lettura

Tutti i valori del nome dell'intestazione HTTP specificata nel messaggio.

Richiesta proxy
message.header.header_name.
 values.count
Numero intero Sola lettura

Conteggio dei valori del nome dell'intestazione HTTP specificata nel messaggio.

Richiesta proxy
message.headers.count Numero intero Sola lettura

Numero di tutte le intestazioni HTTP nel messaggio.

Richiesta proxy
message.headers.names Raccolta Sola lettura

Valore di tutte le intestazioni HTTP nel messaggio

Richiesta proxy
message.path Stringa Lettura/scrittura

Il percorso del messaggio di richiesta completo nell'URL, esclusi eventuali parametri di ricerca.

Richiesta proxy
message.queryparam.param_name Stringa Sola lettura

Restituisce il parametro di query del messaggio specificato.

Richiesta proxy
message.queryparam.param_name.N Stringa Lettura/scrittura

Il valore del parametro di query Nth nel messaggio. Ad esempio, se request.querystring è "a=hello&a=world", il valore restituito di message.queryparam.a.1 è "hello".

Come esempio di scrittura di più valori per un singolo nome di parametro di query, come "type=siteid:1&type=language:us-en&type=currency:USD", imposta quanto segue:

  • message.queryparam.type.1 a "siteid:1"
  • message.queryparam.type.2 in "language:en-us"
  • Da message.queryparam.type.3 a "currency:USD"
Richiesta proxy
message.queryparam.param_name.
 values
Raccolta Sola lettura

Tutti i valori di un determinato parametro di ricerca nel messaggio, formattati come elenco separato da virgole.

Ad esempio, se la stringa di query è a=hello&a=world, il valore di message.queryparam.a.values è "['hello', 'world']".

Richiesta proxy
message.queryparam.param_name.
 values.count
Numero intero Sola lettura

Il conteggio totale di un parametro di query specificato associato alla richiesta inviata a ProxyEndpoint dall'app client.

Richiesta proxy
message.queryparams.count Numero intero Sola lettura

Il conteggio totale di tutti i parametri di query associati alla richiesta inviata a ProxyEndpoint dall'app client.

Richiesta proxy
message.queryparams.names Raccolta Sola lettura

Un elenco di tutti i nomi dei parametri di query associati alla richiesta inviata a ProxyEndpoint dall'app client.

Per eseguire l'iterazione dei nomi dei parametri di query utilizzando JavaScript, consulta il seguente post della community di Apigee: How do you iterate Collection from "request.queryparams.names" in JS? nella community Apigee.

Richiesta proxy
message.querystring Stringa Sola lettura

Una stringa contenente tutti i nomi e i valori dei parametri di query associati alla richiesta inviata a ProxyEndpoint dall'app client.

Ad esempio, per la richiesta "http://api.apiFactory.com/inventors?name=nick&surname=danger", il valore di message.querystring è "name=nick&surname=danger".

Richiesta proxy
message.reason.phrase Stringa Sola lettura

Motivazione della frase di risposta del messaggio di destinazione.

Risposta target
message.status.code Numero intero Sola lettura

Codice di stato HTTP del messaggio di risposta dalla destinazione.

Risposta target
message.transport.message TransportMessage Sola lettura

Messaggio di tipo TransportMessage, che è un oggetto contestuale.

Richiesta proxy
message.uri Stringa Sola lettura

Il percorso dell'URI completo (che segue l'URL del dominio), inclusi i parametri di ricerca.

Ad esempio, per la richiesta "http://api.apiFactory.com/inventors?name=nikola&surname=tesla", questa variabile restituisce "inventors?name=nikola&surname=tesla".

Richiesta proxy
message.verb Stringa Sola lettura

Il verbo HTTP (GET, PUT, POST, DELETE e così via) associato alla richiesta.

Richiesta proxy
message.version Stringa Lettura/scrittura

La versione HTTP associata alla richiesta inviata a ProxyEndpoint dall'applicazione client.

Richiesta proxy

Per maggiori informazioni sui messaggi, consulta Riferimento alle funzioni del modello di messaggio.

messageid

Un contenitore per l'ID univoco globale della richiesta.

La tabella seguente descrive le proprietà della variabile messageid:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
messageid Stringa Sola lettura

Contiene l'ID univoco globale per la richiesta, incluso il nome host del router. Questo ID consente il tracciamento delle richieste ricevute al router dopo l'invio al processore di messaggi.

Questo ID viene registrato nei log degli errori Edge per mettere in relazione messageid con gli errori.

Richiesta proxy

organization

Un contenitore per la proprietà organization.name.

La tabella seguente descrive le proprietà della variabile organization:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
organization.name Stringa Sola lettura

Nome dell'organizzazione.

Richiesta proxy

Per saperne di più sulle organizzazioni, consulta Informazioni sulle organizzazioni.

proxy

La configurazione del proxy API.

La tabella seguente descrive le proprietà della variabile proxy:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
proxy.basepath Stringa Sola lettura

Il valore del percorso di base nella configurazione del proxy API. Il percorso di base è il frammento URI che segue l'host nell'URL. Gli URI di flusso condizionale seguono il percorso di base.

Nell'URL "http://myorg-test.apigee.net/v2/weatherapi/forecastrss?w=12797282":

  • L'host è "myorg-test.apigee.net" (che include il nome dell'organizzazione e l'ambiente)
  • Il percorso di base è "/v2/weatherapi"

L'unico modo per saperlo è esaminare la definizione del proxy API o controllare il valore della variabile proxy.basepath. Il suffisso del percorso proxy segue il percorso di base ("/forecastrss") insieme a eventuali parametri di query.

Se definisci un percorso di base dinamico nella configurazione del proxy API, ad esempio "/v2/*/weatherapi", questa variabile è impostata sul percorso dinamico ("/v2/*/weatherapi"), anche se il percorso di base viene risolto in un valore statico, ad esempio "/v2/foo/weatherapi".

Richiesta proxy
proxy.client.ip Stringa Sola lettura

L'indirizzo X-Forwarded-For della chiamata in entrata, ovvero l'indirizzo IP ricevuto da Edge dall'ultimo handshake TCP esterno. Potrebbe essere il client chiamante o un bilanciatore del carico.

Richiesta proxy
proxy.name Stringa Sola lettura

L'attributo del nome configurato per ProxyEndpoint.

Richiesta proxy
proxy.pathsuffix Stringa Sola lettura

Il valore del suffisso del percorso base del proxy API inviato dal client e ricevuto a ProxyEndpoint.

Il percorso base è definito come il componente del percorso che identifica in modo univoco il proxy API. L'URL visibile al pubblico di un proxy API è composto dal nome dell'organizzazione, dall'ambiente in cui è stato eseguito il deployment del proxy, dal percorso base, dal suffisso del percorso base ed eventuali parametri di query.

Ad esempio, in una richiesta per http://myorg-test.apigee.net/v2/weatherapi/forecastrss?w=12797282, il suffisso basepath è "/forecastrss".

Richiesta proxy
proxy.url Stringa Sola lettura

Restituisce l'URL completo associato alla richiesta proxy ricevuta da ProxyEndpoint, inclusi eventuali parametri di query presenti. L'host dell'URL sarà sempre localhost se il proxy viene richiamato con <LocalTargetConnection> per eseguire il concatenamento del proxy.

Per un esempio che crea un URL di request utilizzando l'host originale, consulta Messaggi di richiesta di accesso.

Richiesta proxy

Per saperne di più sull'utilizzo dei proxy API, consulta la pagina Informazioni sulle API e sui proxy API.

request

La richiesta completa, incluso l'eventuale payload presente.

Per maggiori informazioni sui dati della richiesta, consulta la pagina In che modo i dati della richiesta vengono passati al server di backend?

La tabella seguente descrive le proprietà della variabile request:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
request message Sola lettura

La richiesta completa, incluso l'eventuale payload presente.

Richiesta proxy
request.content Stringa Lettura/scrittura

Restituisce o imposta il payload del messaggio di richiesta.

Richiesta proxy
request.formparam.param_name Stringa Lettura/scrittura

Restituisce o imposta il valore del parametro di modulo specificato nella richiesta inviata dall'applicazione client.

Richiesta proxy
request.formparam.param_name.
 values
Raccolta Sola lettura

Tutti i valori di un determinato parametro di modulo nella richiesta, formattati come elenco separato da virgole.

Ad esempio, se il payload è "a=hello&x=greeting&a=world", il valore di request.formparam.a.values è "['hello', 'world']".

Richiesta proxy
request.formparam.param_name.
 values.count
Numero intero Sola lettura

Conteggio di tutti i valori per il parametro del modulo specificato associato alla richiesta.

Richiesta proxy
request.formparam.param_name.N Stringa Lettura/scrittura

Il valore dell'Nth parametro di modulo specifico nel messaggio. Ad esempio, se la stringa del modulo è "a=hello&a=world", il valore restituito di request.formparam.a.1 è "hello".

Richiesta proxy
request.formparams.count Numero intero Sola lettura

Conteggio di tutti i parametri del modulo associati alla richiesta inviata dall'applicazione client.

Richiesta proxy
request.formparams.names Raccolta Sola lettura

Un elenco di tutti i nomi dei parametri del modulo associati alla richiesta.

Richiesta proxy
request.formstring Stringa Sola lettura

Il valore formparam completo nella richiesta inviata dall'app client.

Ad esempio, "name=test&type=first&group=A".

Richiesta proxy
request.header.header_name Stringa Lettura/scrittura

Consente di acquisire o impostare il valore di una determinata intestazione trovata nella richiesta. Se l'intestazione contiene una virgola, al momento della lettura riceverai solo il segmento di testo fino alla prima virgola.

Se vuoi l'intestazione intera, utilizza il modulo request.header.header_name.values.

Richiesta proxy
request.header.header_name.N Stringa Lettura/scrittura

Il valore dell'Nth valore di intestazione specifico nella richiesta. Apigee Edge suddivide i valori del testo dell'intestazione per virgole. Tieni presente che l'indice il cui valore viene utilizzato per N è basato su 1, non su 0.

Ad esempio, se l'intestazione Cache-control è "public, maxage=16544", il valore restituito di request.header.cache-control.1 è "maxage=16544".

Richiesta proxy
request.header.header_name.
 values
Raccolta Sola lettura

Tutti i valori di una determinata intestazione nella richiesta.

Richiesta proxy
request.header.header_name.
 values.count
Numero intero Sola lettura

Conteggio di tutti i valori di una determinata intestazione nella richiesta.

Richiesta proxy
request.headers.count Numero intero Sola lettura

Conteggio di tutte le intestazioni nella richiesta.

Richiesta proxy
request.headers.names Raccolta Sola lettura

Nomi di tutte le intestazioni della richiesta.

Richiesta proxy
request.path Stringa Sola lettura

Il percorso della risorsa senza proxy (escluso l'host) al servizio di backend, esclusi i parametri di query.

Ad esempio, dell'URI del servizio di backend è "https://example.com/rest/api/latest", il valore di request.path è "/rest/api/latest".

Richiesta proxy
request.queryparam.param_name Stringa Lettura/scrittura

Il valore di un determinato parametro di query trovato nella richiesta.

Richiesta proxy
request.queryparam.param_name.N Stringa Lettura/scrittura

Il valore del parametro di query Nth nella richiesta.

Ad esempio, se request.querystring è "a=hello&a=world", il valore restituito di è request.queryparam.a.1 è "hello".

Come esempio di scrittura di più valori per un singolo nome di parametro di query, come "type=siteid:1&type=language:us-en&type=currency:USD", imposta quanto segue:

  • request.queryparam.type.1 a "siteid:1"
  • request.queryparam.type.2 in "language:en-us"
  • Da request.queryparam.type.3 a "currency:USD"
Richiesta proxy
request.queryparam.param_name.
 values
Raccolta Sola lettura

Tutti i valori di un determinato parametro di ricerca nella richiesta, formattati come elenco separato da virgole.

Ad esempio, se request.querystring è "a=hello&b=lovely&a=world", il valore di request.queryparam.a.values è "['hello', 'world']".

Richiesta proxy
request.queryparam.param_name.
 values.count
Numero intero Sola lettura

Il conteggio di tutti i valori di un determinato parametro di query nella richiesta.

Richiesta proxy
request.queryparams.count Numero intero Sola lettura

Il conteggio di tutti i parametri di query nella richiesta.

Richiesta proxy
request.queryparams.names Raccolta Sola lettura

I nomi di tutti i parametri di ricerca nella richiesta.

Per eseguire l'iterazione dei nomi dei parametri di query utilizzando JavaScript, consulta Come si esegue l'iterazione della raccolta da "request.queryparams.names" in JS? nella community Apigee.

Richiesta proxy
request.querystring Stringa Sola lettura

L'elenco completo dei parametri di query nella richiesta inviata dall'app client.

Ad esempio, se la richiesta è "http://host.com/123?name=first&surname=second&place=address", questa variabile restituisce "name=first&surname=second&place=address".

Richiesta proxy
request.transportid Stringa Sola lettura

ID della richiesta come tipo TransportMessage, che è un oggetto contestuale.

Richiesta proxy
request.transport.message Messaggio di trasporto Sola lettura

Richiesta di tipo TransportMessage, che è un oggetto contestuale.

Richiesta proxy
request.uri Stringa Sola lettura

In un proxy API, il proxy <BasePath> in ProxyEndpoint (oltre all'URL di base del proxy) viene mappato all'URL del servizio di destinazione in TargetEndpoint. Ad esempio:

<ProxyEndpoint>
...
  <BasePath>/my-mock-proxy</BasePath>

Rimanda a

<TargetEndpoint>
...
  <HTTPTargetConnection>
    http://mocktarget.apigee.net
  </HTTPTargetConnection>

Nella richiesta, request.uri è il percorso di base del proxy + il resto dell'indirizzo, inclusi i parametri di query.

Nella risposta, request.uri è il resto dell'indirizzo, inclusi i parametri di query, dopo HTTPTargetConnection.

La differenza è che la richiesta originale è pervenuta al proxy, che però invia un'altra richiesta al servizio di destinazione.

Supponiamo che venga effettuata la seguente chiamata al nostro proxy di esempio, che ha un percorso di base di "/my-mock-proxy":

http://my_org-test.apigee.net/my-mock-proxy/user?user=Dude

E il proxy chiama:

http://mocktarget.apigee.net

che aggiunge "/user?user=Dude" all'URL.

  • Richiesta: request.uri = "/my-mock-proxy/user?user=Dude"
  • Risposta: request.uri = "/user?user=Dude"
Richiesta proxy (diversa nella risposta)
request.url Stringa Sola lettura

L'URL completo della richiesta inviata all'endpoint di destinazione, inclusi i parametri della stringa di query, ma escluso il numero di porta (se specificato).

Ad esempio, se effettui una chiamata a un proxy di esempio "http://my_org-test.apigee.net/my-mock-proxy/user?user=Dude" e l'endpoint di destinazione è "http://example.com:8080", il valore è:

  • Richiesta: n/d
  • Risposta: "http://example.com/user?user=Dude"
Risposta target
request.verb Stringa Sola lettura

Il verbo HTTP utilizzato per la richiesta. Ad esempio, "GET", "PUT" ed "DELETE".

Richiesta proxy
request.version Stringa Sola lettura

La versione HTTP della richiesta. Ad esempio, "1.1".

Richiesta proxy

response

La risposta completa, incluso l'eventuale payload presente.

La tabella seguente descrive le proprietà della variabile response:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
response message Lettura/scrittura

Messaggio di risposta completo restituito dalla destinazione.

Risposta target
response.content Stringa Lettura/scrittura

Contenuto del payload del messaggio di risposta restituito dal target.

Risposta target
response.formparam.param_name Stringa Lettura/scrittura

Il valore di un parametro modulo nella risposta.

Risposta target
response.formparam.param_name.
 values.count
Numero intero Sola lettura

Conteggio di tutti i valori del parametro del modulo specificato nella risposta.

Risposta target
response.formparams.count Numero intero Sola lettura

Conteggio di tutti i prametri di forma nella risposta.

Risposta target
response.formparams.names Raccolta Sola lettura

I nomi di tutti i parametri del modulo nella risposta.

Risposta target
response.header.header_name Stringa Lettura/scrittura

Restituisce o imposta il valore di un'intestazione HTTP specificata nella risposta.

Se il testo dell'intestazione include una virgola, Apigee Edge deduce più valori. In questo caso, response.header.header_name restituisce solo il primo valore.

Per leggere l'intera intestazione, utilizza il modulo response.header.header_name.values.

Risposta target
response.header.header_name.
 values
Raccolta Sola lettura

Tutti i valori di un'intestazione HTTP specificata nella risposta.

Risposta target
response.header.header_name.
 values.count
Numero intero Sola lettura

Conteggio di tutti i valori dell'intestazione HTTP specificata nella risposta.

Risposta target
response.header.header_name.N Stringa Lettura/scrittura

Il valore dell'Nth valore di intestazione specifico nella risposta. Apigee Edge suddivide i valori del testo dell'intestazione per virgole. Tieni presente che l'indice il cui valore viene utilizzato per N è basato su 1, non su 0.

Ad esempio, se l'intestazione Cache-control è "public, maxage=16544", response.header.cache-control.1 restituisce "maxage=16544".

Risposta target
response.headers.count Numero intero Sola lettura

Conteggio di tutte le intestazioni nella risposta.

Risposta target
response.headers.names Raccolta Sola lettura

I nomi di tutte le intestazioni nella risposta.

Risposta target
response.reason.phrase Stringa Lettura/scrittura

La frase del motivo della risposta per una determinata richiesta.

Risposta target
response.status.code Numero intero Lettura/scrittura

Il codice di risposta restituito per una richiesta. Puoi utilizzare questa variabile per eseguire l'override del codice di stato della risposta, archiviato in message.status.code. Per ulteriori informazioni, visita la pagina message.

Risposta target
response.transport.message Stringa Sola lettura

Risposta di tipo TransportMessage, che è un oggetto contestuale.

Risposta target

route

Specifica i nomi di <RouteRule> e TargetEndpoint.

La tabella seguente descrive le proprietà della variabile route:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
route.name Stringa Sola lettura

Il nome dell'elemento <RouteRule> eseguito in ProxyEndpoint. Ad esempio, "default". Una RouteRule fa riferimento a un proxy API TargetEndpoint da eseguire.

Richiesta di destinazione
route.target Stringa Sola lettura

Il nome dell'endpoint TargetEndpoint che è stato eseguito. Ad esempio, "default".

Richiesta di destinazione

router

Un contenitore per la proprietà router.uuid, che è deprecato.

La tabella seguente descrive le proprietà della variabile router:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
router.uuid Stringa Sola lettura

Deprecato e restituisce null. (in precedenza l'UUID del router che gestisce il proxy).

Richiesta proxy

servicecallout

Descrive TargetEndpoint per un criterio ServiceCallout.

La tabella seguente descrive le proprietà della variabile servicecallout:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
servicecallout.policy_name.expectedcn Stringa Lettura/scrittura

Il nome comune previsto di TargetEndpoint come indicato in un criterio ServiceCallout (Criterio ServiceCallout). Questo valore è significativo solo quando TargetEndpoint fa riferimento a un endpoint TLS/SSL.

Richiesta proxy
servicecallout.policy_name.target.url Stringa Lettura/scrittura

L'URL TargetEndpoint per un determinato criterio ServiceCallout.

Richiesta proxy
servicecallout.requesturi Stringa Lettura/scrittura

L'URI TargetEndpoint per un criterio ServiceCallout policy. L'URI è l'URL TargetEndpoint senza il protocollo e la specifica di dominio.

Richiesta proxy

system

Specifica l'indirizzo IP del sistema e i dettagli relativi al proxy.

La tabella seguente descrive le proprietà della variabile system:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
system.interface.interface_name Stringa Sola lettura

Indirizzo IP del sistema.

Richiesta proxy
system.pod.name Stringa Sola lettura

Il nome del pod su cui è in esecuzione il proxy.

Richiesta proxy
system.region.name Stringa Sola lettura

Il nome della regione del data center in cui è in esecuzione il proxy.

Richiesta proxy
system.time Stringa Sola lettura

L'ora in cui è stata letta questa variabile. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC".

Questo valore è la rappresentazione stringa del valore corrispondente di system.timestamp. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di "1377112607413".

Richiesta proxy
system.time.year Numero intero Sola lettura

La parte relativa all'anno di system.time.

Richiesta proxy
system.time.month Numero intero Sola lettura

La parte relativa al mese di system.time.

Richiesta proxy
system.time.day Numero intero Sola lettura

La parte del giorno del mese di system.time.

Richiesta proxy
system.time.dayofweek Numero intero Sola lettura

La parte relativa al giorno della settimana di system.time.

Richiesta proxy
system.time.hour Numero intero Sola lettura

La parte relativa all'ora di system.time.

Richiesta proxy
system.time.minute Numero intero Sola lettura

La parte minuto di system.time.

Richiesta proxy
system.time.second Numero intero Sola lettura

La seconda parte di system.time.

Richiesta proxy
system.time.millisecond Numero intero Sola lettura

La parte in millisecondi di system.time.

Richiesta proxy
system.time.zone Stringa Sola lettura

Fuso orario del sistema.

Richiesta proxy
system.timestamp Lungo Sola lettura

Il numero intero a 64 bit (lungo) che rappresenta il tempo di lettura della variabile. Il valore è il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC. Ad esempio, "1534783015000".

Richiesta proxy
system.uuid Stringa Sola lettura

L'UUID del processore di messaggi che gestisce il proxy.

Richiesta proxy

target

Descrive il target della richiesta.

La tabella seguente descrive le proprietà della variabile target:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
target.basepath Stringa Sola lettura

Il percorso della risorsa (escluso il dominio) al servizio di destinazione, esclusi i parametri di query, definito nel TargetEndpoint del proxy.

Ad esempio, supponiamo che un proxy API chiami il seguente target:

<TargetEndpoint name="default">
...
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net/user?user=Dude</URL>
  </HTTPTargetConnection>

In questo esempio, target.basepath è "/user".

Se il target fosse questo:

<TargetEndpoint name="default">
...
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net</URL>
  </HTTPTargetConnection>

Il valore target.basepath sarà nullo.

Richiesta di destinazione
target.copy.pathsuffix Booleano Lettura/scrittura

Quando "true", la richiesta inoltrata da ProxyEndpoint a TargetEndpoint conserva il suffisso del percorso (il frammento di percorso URI che segue l'URI definito nel percorso di base ProxyEndpoint).

Richiesta di destinazione
target.copy.queryparams Booleano Lettura/scrittura

Se "true", la richiesta inoltrata da ProxyEndpoint a TargetEndpoint conserva i parametri di query.

Richiesta di destinazione
target.country Stringa Sola lettura

Paese del certificato TLS/SSL presentato dal server di destinazione

Risposta target
target.cn Stringa Sola lettura

Il nome comune di TargetEndpoint. Questo valore è significativo solo quando TargetEndpoint fa riferimento a un endpoint TLS/SSL.

Richiesta di destinazione
target.email.address Stringa Sola lettura

Indirizzo email del certificato TLS/SSL presentato dal server di destinazione

Risposta target
target.expectedcn Stringa Lettura/scrittura

Il nome comune previsto di TargetEndpoint. Ciò è significativo solo quando TargetEndpoint fa riferimento a un endpoint TLS/SSL.

Richiesta proxy
target.host Stringa Sola lettura

Il nome di dominio del servizio di destinazione che restituisce la risposta al proxy API.

Risposta target
target.ip Stringa Sola lettura

L'indirizzo IP del servizio di destinazione che restituisce la risposta al proxy API.

Risposta target
target.locality Stringa Sola lettura

Località (città) del certificato TLS/SSL presentato dal server di destinazione

Risposta target
target.name Stringa Sola lettura

Target di destinazione del messaggio da raggiungere da endpoint di destinazione.

Richiesta di destinazione
target.organization Stringa Sola lettura

Organizzazione del certificato TLS/SSL presentato dal server di destinazione.

Risposta target
target.organization.unit Stringa Sola lettura

Unità organizzativa del certificato TLS/SSL presentato dal server di destinazione.

Risposta target
target.port Numero intero Sola lettura

Il numero di porta del servizio di destinazione che restituisce la risposta al proxy API.

Risposta target
target.received.end.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui TargetEndpoint ha terminato di ricevere la risposta dalla destinazione. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC".

Questo valore temporale è la rappresentazione in formato stringa della quantità del timestamp a 32 bit corrispondente. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di "1377112607413".

Risposta target
target.received.end.
  timestamp
Lungo Sola lettura

Il valore del timestamp che specifica quando TargetEndpoint ha finito di ricevere la risposta dalla destinazione. Ad esempio, "1534783015000". Questo valore è un numero intero a 64 bit (lungo) che specifica il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC.

Risposta target
target.received.start.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui TargetEndpoint ha iniziato a ricevere la risposta dal target. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC".

Questo valore temporale è la rappresentazione in formato stringa della quantità del timestamp a 32 bit corrispondente. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di "1377112607413".

Risposta target
target.received.start.
  timestamp
Lungo Sola lettura

Il valore del timestamp che specifica quando TargetEndpoint ha iniziato a ricevere la risposta dalla destinazione. Ad esempio, "1534783015000". Questo valore è un numero intero a 64 bit (lungo) che specifica il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC.

Risposta target
target.scheme Stringa Sola lettura

Inizio dell'ambito: risposta di destinazione
Tipo: stringa
Autorizzazione: lettura/scrittura

Restituisce http o https a seconda del messaggio di richiesta.

Richiesta di destinazione
target.sent.end.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui il proxy ha interrotto l'invio della richiesta all'URL specificato in TargetEndpoint. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC".

Questo valore temporale è la rappresentazione in formato stringa della quantità del timestamp a 32 bit corrispondente. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di "1377112607413".

Richiesta di destinazione
target.sent.end.timestamp Lungo Sola lettura

Il valore del timestamp che specifica quando il proxy ha terminato l'invio della richiesta all'URL specificato in TargetEndpoint. Ad esempio, "1377112607413". Questo valore è un numero intero a 64 bit (lungo) contenente il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC.

Richiesta di destinazione
target.sent.start.time Stringa Sola lettura

L'ora, espressa in formato stringa, in cui il proxy ha iniziato a inviare la richiesta all'URL specificato in TargetEndpoint. Ad esempio, "Mer, 21 Aug 2013 19:16:47 UTC".

Questo valore temporale è la rappresentazione in formato stringa della quantità del timestamp a 32 bit corrispondente. Ad esempio, "Mer 21 ago 2013 19:16:47 UTC" corrisponde al valore del timestamp di "1377112607413".

Richiesta di destinazione
target.sent.start.timestamp Lungo Sola lettura

Il valore del timestamp che specifica quando il proxy ha iniziato a inviare la richiesta all'URL specificato in TargetEndpoint. Ad esempio, "1534783015000". Questo valore è un numero intero a 64 bit (lungo) che specifica il numero di millisecondi trascorsi dalla mezzanotte del 1° gennaio 1970 UTC.

Richiesta di destinazione
target.ssl.enabled Booleano Sola lettura

Indica se TargetEndpoint è in esecuzione su TLS/SSL.

Richiesta proxy
target.state Stringa Sola lettura

Stato del certificato TLS/SSL presentato dal server di destinazione.

Risposta target
target.url Stringa Lettura/scrittura

L'URL configurato nel file XML di TargetEndpoint o nell'URL di destinazione dinamico (se target.url è impostato durante il flusso di messaggi). La variabile non include parametri di query o elementi di percorso aggiuntivi. Restituisce null se chiamato fuori ambito o se non viene configurato in altro modo.

Richiesta di destinazione

variable

Un contenitore per la proprietà variable.expectedcn.

La tabella seguente descrive le proprietà della variabile variable:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
variable.expectedcn Stringa Lettura/scrittura

Variabile esposta per il nome comune se in esecuzione su TLS/SSL.

Richiesta proxy

Per ulteriori informazioni sull'utilizzo di TLS, consulta l'introduzione a TLS/SSL.

virtualhost

Specifica i dettagli sull'host virtuale.

La tabella seguente descrive le proprietà della variabile virtualhost:

Proprietà Tipo Lettura/scrittura Descrizione Inizio dell'ambito
virtualhost.aliases.values Array di stringhe Sola lettura

Alias host dell'host virtuale raggiunto durante una richiesta specifica.

Richiesta proxy
virtualhost.name Stringa Sola lettura

Nome dell'host virtuale che gestisce la richiesta del client di origine.

Richiesta proxy
virtualhost.ssl.enabled Booleano Sola lettura

Restituisce "true" se TLS/SSL è abilitato nella configurazione dell'host virtuale.

Richiesta proxy

Per maggiori informazioni sull'utilizzo degli host virtuali, consulta Configurazione degli host virtuali.