Informazioni sulle variabili di flusso

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione 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 sul tempo di esecuzione del criterio.

Nella tabella seguente vengono descritte le proprietà della variabile apigee:

Proprietà Tipo Lettura/scrittura Descrizione Inizio ambito
apigee.metrics.policy.policy_name.timeTaken Numero intero Sola lettura Il tempo, in nanosecondi, impiegato dal criterio per l'esecuzione. Norme

apiproxy

Descrive il proxy API.

Nella tabella seguente vengono descritte le proprietà della variabile apiproxy:

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

Per ulteriori informazioni sull'utilizzo dei proxy API, consulta Comprensione delle API e Proxy API.

application

Un contenitore per la proprietà application.basepath.

Nella tabella seguente vengono descritte le proprietà della variabile application:

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

client

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

Nella tabella seguente vengono descritte le proprietà della variabile client:

Proprietà Tipo Lettura/scrittura Descrizione Inizio 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 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 dal ProxyEndpoint.

Richiesta proxy
client.ip Stringa Sola lettura

L'indirizzo IP del client o del sistema che invia il messaggio al router perimetrale. Per ad esempio l'IP client originale o l'IP di un 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 presentati dal cliente. (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 al ProxyEndpoint.

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

L'ora, espressa in formato stringa, in cui il proxy ha finito di ricevere la richiesta. del client di origine al ProxyEndpoint. Ad esempio: Mer, 21 Aug 2013 19:16:47 UTC.

Questo valore di tempo è la rappresentazione stringa del timestamp a 32 bit corrispondente quantità. Ad esempio, "Mer, 21 ago 2013 19:16:47 UTC" corrisponde al valore timestamp di 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 nel 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. del client di origine al ProxyEndpoint. Ad esempio: Mer, 21 Aug 2013 19:16:47 UTC

Questo valore di tempo è la rappresentazione stringa del timestamp a 32 bit corrispondente quantità. Ad esempio, "Mer, 21 ago 2013 19:16:47 UTC" corrisponde al valore timestamp di 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 nel 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 della modalità di trasporto utilizzata dall'app client per inviare il di richiesta di accesso.

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. dal ProxyEndpoint al client. Ad esempio: "Mer, 21 ago 2013 19:16:47 UTC".

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

PostClientFlow
client.sent.end.timestamp Lungo Sola lettura Il valore del timestamp che specifica quando il ProxyEndpoint ha terminato 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 il ProxyEndpoint ha iniziato a restituire il all'app client di origine. Ad esempio, "Mer, 21 ago 2013 19:16:47 UTC".

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

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

"vero" se il ProxyEndpoint è configurato per TLS/SSL; altrimenti "false".

Richiesta proxy
client.state Stringa Sola lettura

Lo stato nel certificato TLS/SSL presentato dal client.

Richiesta proxy

current

Contiene informazioni sul flusso proxy API corrente.

Nella tabella seguente vengono descritte le proprietà della variabile current:

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

Puoi visualizzare queste proprietà nella visualizzazione Trace della UI Edge. Tuttavia, queste proprietà non sono visibile per impostazione predefinita nella visualizzazione Trace dell'UI classica.

environment

Un contenitore per la proprietà environment.name.

Nella tabella seguente vengono descritte le proprietà della variabile environment:

Proprietà Tipo Lettura/scrittura Descrizione Inizio 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 flusso di errori.

Nella tabella seguente vengono descritte le proprietà della variabile error:

Proprietà Tipo Lettura/scrittura Descrizione Inizio 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'errore viene eseguito.

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 errata".

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 ambito
fault.fault_name Stringa Sola lettura fault_name è il nome dell'errore, come descritto nella tabella Errori di runtime incluse in ogni argomento relativo al riferimento alle norme. Errore

is

Un contenitore per la proprietà is.error.

Nella tabella seguente vengono descritte le proprietà della variabile is:

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

Flag di errore.

Richiesta proxy

loadbalancing

Fornisce informazioni sullo stato del bilanciamento del carico di TargetEndpoint.

Nella tabella seguente vengono descritte le proprietà della variabile loadbalancing:

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

Elenco di TargetServer non riusciti durante il bilanciamento del carico presso TargetEndpoint.

Risposta target
loadbalancing.isfallback Booleano Sola lettura

"vero" se il fallback è abilitato per TargetServer richiamato durante il bilanciamento del carico a TargetEndpoint.

Risposta target
loadbalancing.targetserver Stringa Sola lettura

TargetServer richiamato durante il bilanciamento del carico su TargetEndpoint. Impostalo solo se L'elemento <Path> viene impostato durante la definizione dell'elemento del bilanciatore del carico.

Risposta target

message

Un oggetto contestuale, con lo stesso valore di request nel flusso di richiesta o come response nel flusso di risposta o come error nell'errore flusso di lavoro.

Nella tabella seguente vengono descritte le proprietà della variabile message:

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

Un oggetto contestuale con lo stesso valore di request nel flusso di richiesta o come response nel flusso di risposta o come error nel campo Errore flusso di lavoro.

Richiesta proxy
message.content Stringa Lettura/scrittura

Contenuto della richiesta, della risposta o del messaggio di errore.

Richiesta proxy
message.formparam.param_name Stringa Lettura/scrittura

Valore del parametro del modulo specificato.

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

Tutti i valori del parametro del modulo specificato nel messaggio.

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

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

Richiesta proxy
message.formparams.count Numero intero Sola lettura

Conteggio di tutti i parametri del modulo nel messaggio.

Richiesta proxy
message.formparams.names Collezione Sola lettura

Valore di tutti i parametri del 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

Consente di ottenere o impostare il valore dell'intestazione HTTP specificata nel messaggio. Se l'intestazione contiene una virgola, al momento della lettura riceverai solo il segmento del testo fino al primo virgola. Se vuoi utilizzare l'intestazione completa, utilizza il modulo request.header.header_name.
 values

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

Il valore dell'ennesimo valore dell'intestazione specifica nel messaggio, ovvero richiesta o in base allo stato del flusso. Apigee Edge divide i valori di testo delle intestazioni per virgole. Tieni presente che l'indice il cui valore viene utilizzato per N è in base a 1, non in base a 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
Collezione 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 specificato nel messaggio.

Richiesta proxy
message.headers.count Numero intero Sola lettura

Conteggio di tutte le intestazioni HTTP nel messaggio.

Richiesta proxy
message.headers.names Collezione Sola lettura

Valore di tutte le intestazioni HTTP nel messaggio

Richiesta proxy
message.path Stringa Lettura/scrittura

Il percorso completo del messaggio di richiesta nell'URL senza 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=mondo", allora il valore restituito di message.queryparam.a.1 è "ciao".

Ecco un 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:

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

Tutti i valori di un determinato parametro di query 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', 'mondo']".

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 al ProxyEndpoint dall'app client.

Richiesta proxy
message.queryparams.count Numero intero Sola lettura

Il conteggio totale di tutti parametri di ricerca associati alla richiesta inviata al ProxyEndpoint dall'app client.

Richiesta proxy
message.queryparams.names Collezione Sola lettura

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

Per eseguire l'iterazione dei nomi dei parametri di query utilizzando JavaScript, consulta le seguenti risorse Post della community: Come si ripete la raccolta da "request.queryparams.names"? in JS? della community Apigee.

Richiesta proxy
message.querystring Stringa Sola lettura

Una stringa contenente tutti i nomi dei parametri di query e i valori associati alla richiesta inviato al 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

ReasonPhrase del messaggio di risposta del target.

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 (segue l'URL del dominio) inclusi 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) associati alla richiesta.

Richiesta proxy
message.version Stringa Lettura/scrittura

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

Richiesta proxy

Per ulteriori informazioni sui messaggi, vedi Riferimento per le funzioni del modello di messaggio.

messageid

Un contenitore per l'ID univoco globale della richiesta.

Nella tabella seguente vengono descritte le proprietà della variabile messageid:

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

Contiene l'ID univoco globale per la richiesta, che include il nome host del router. Questo ID consente di tracciare le richieste ricevute sul router dopo l'invio al router di elaborazione dei messaggi.

Questo ID viene registrato nei log degli errori di Edge per correlare messageid con errori.

Richiesta proxy

organization

Un contenitore per la proprietà organization.name.

Nella tabella seguente vengono descritte le proprietà della variabile organization:

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

Nome dell'organizzazione.

Richiesta proxy

Per saperne di più sulle organizzazioni, vedi Comprensione per le organizzazioni.

proxy

La configurazione del proxy API.

Nella tabella seguente vengono descritte le proprietà della variabile proxy:

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

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

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

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

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

Se definisci un percorso di base dinamico nel proxy API ad esempio "/v2/*/weatherapi", questa variabile è impostata sul percorso dinamico ("/v2/*/weatherapi"), anche se il percorso di base si risolve in un valore statico, come &quot;/v2/foo/weatherapi&quot;.

Richiesta proxy
proxy.client.ip Stringa Sola lettura

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

Richiesta proxy
proxy.name Stringa Sola lettura

L'attributo del nome configurato per il ProxyEndpoint.

Richiesta proxy
proxy.pathsuffix Stringa Sola lettura

Il valore del suffisso del percorso di base del proxy API inviato dal client e ricevuto in il ProxyEndpoint.

Il percorso base è definito come il componente del percorso che identifica in modo univoco il proxy API. L'URL pubblico di un proxy API è composto dal nome della tua organizzazione, dalla ambiente in cui viene eseguito il deployment del proxy, il percorso base, il suffisso del percorso base e qualsiasi query parametri.

Ad esempio, in una richiesta a 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 dal ProxyEndpoint, inclusi eventuali parametri di query presenti. L'host dell'URL sarà sempre localhost se il proxy viene richiamato con <LocalTargetConnection> per eseguire il proxy concatenamento.

Per un esempio in cui viene creato un URL request utilizzando la versione originale host, vedi Messaggi di richiesta di accesso.

Richiesta proxy

Per ulteriori informazioni sull'utilizzo dei proxy API, consulta Comprensione delle API e Proxy API.

request

La richiesta completa, inclusi eventuali payload presenti.

Per ulteriori informazioni sui dati della richiesta, consulta In che modo vengono passati i dati delle richieste al server di backend?

Nella tabella seguente vengono descritte le proprietà della variabile request:

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

La richiesta completa, inclusi eventuali payload presenti.

Richiesta proxy
request.content Stringa Lettura/scrittura

Ottiene o imposta il payload del messaggio di richiesta.

Richiesta proxy
request.formparam.param_name Stringa Lettura/scrittura

Ottieni o imposta il valore del parametro del modulo specificato nella richiesta inviata da l'applicazione client.

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

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

Ad esempio, se il payload è "a=hello&x=greeting&a=mondo", allora 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'ennesimo parametro del modulo nel messaggio. Ad esempio, se la stringa del modulo è "a=hello&a=world", quindi il valore restituito request.formparam.a.1 è "ciao".

Richiesta proxy
request.formparams.count Numero intero Sola lettura

Numero di tutti i parametri del modulo associati alla richiesta inviata dal client un'applicazione.

Richiesta proxy
request.formparams.names Collezione Sola lettura

Un elenco di tutti i nomi di 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 ottenere 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 del testo fino al primo virgola.

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

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

Il valore dell'ennesimo valore dell'intestazione nella richiesta. Apigee Edge divide i valori del testo dell'intestazione con virgole. Tieni presente che l'indice il cui valore viene utilizzato per N è basato su 1, non su base 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
Collezione 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 Collezione 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. escludendo i parametri di query.

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

Richiesta proxy
request.queryparam.param_name Stringa Lettura/scrittura

Il valore di un particolare 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=mondo", il valore restituito di è request.queryparam.a.1 è "ciao".

Ecco un 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:

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

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

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

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

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

Richiesta proxy
request.queryparams.count Numero intero Sola lettura

Il conteggio di tutti i parametri di ricerca nella richiesta.

Richiesta proxy
request.queryparams.names Collezione 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 eseguire l'iterazione della raccolta da "request.queryparams.names" in JS? in Community Apigee.

Richiesta proxy
request.querystring Stringa Sola lettura

L'elenco completo dei parametri di ricerca 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> nel ProxyEndpoint (in oltre all'URL di base del proxy) viene mappato all'URL del servizio di destinazione in il 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 ricerca.

Nella risposta, request.uri è il resto della inclusi i parametri di ricerca, dopo HTTPTargetConnection.

La differenza sta nel fatto che la richiesta originale è arrivata al proxy, ma poi il proxy 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" a quell'URL.

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

L'URL completo della richiesta inviata all'endpoint di destinazione, incluso il 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/a
  • 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 qualsiasi payload presente.

Nella tabella seguente vengono descritte le proprietà della variabile response:

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

Messaggio di risposta completo restituito dal target.

Risposta target
response.content Stringa Lettura/scrittura

Contenuto del payload del messaggio di risposta restituito dalla destinazione.

Risposta target
response.formparam.param_name Stringa Lettura/scrittura

Il valore di un parametro del 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

Numero di tutti i prametri di forma nella risposta.

Risposta target
response.formparams.names Collezione Sola lettura

I nomi di tutti i parametri del modulo nella risposta.

Risposta target
response.header.header_name Stringa Lettura/scrittura

Consente di ottenere o impostare 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'intestazione completa, utilizza il modulo response.header.header_name.values.

Risposta target
response.header.header_name.
 values
Collezione 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'ennesimo valore dell'intestazione nella risposta. Apigee Edge divide i valori del testo dell'intestazione con virgole. Tieni presente che l'indice il cui valore viene utilizzato per N è basato su 1, non su base 0.

Ad esempio, se l'intestazione Cache-control è "public, maxage=16544", quindi 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 Collezione Sola lettura

I nomi di tutte le intestazioni della 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 codice di stato della risposta, memorizzato in message.status.code. Per ulteriori informazioni, consulta message.

Risposta target
response.transport.message Stringa Sola lettura

Risposta di tipo TransportMessage, che è un oggetto contemporaneo.

Risposta target

route

Specifica i nomi di <RouteRule> e TargetEndpoint.

Nella tabella seguente vengono descritte le proprietà della variabile route:

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

Il nome del <RouteRule> che è stato eseguito nel ProxyEndpoint. Ad esempio: "predefinita". Una RouteRule fa riferimento a un TargetEndpoint del proxy API da eseguire.

Richiesta target
route.target Stringa Sola lettura

Il nome del TargetEndpoint che è stato eseguito. Ad esempio, "default".

Richiesta target

router

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

Nella tabella seguente vengono descritte le proprietà della variabile router:

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

Deprecato e restituisce un valore nullo. (In precedenza, l'UUID del router che gestisce i proxy.)

Richiesta proxy

servicecallout

Descrive il TargetEndpoint per un criterio ServiceCallout.

Nella tabella seguente vengono descritte le proprietà della variabile servicecallout:

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

Il nome comune previsto dell'endpoint target come indicato in un Norme relative alle norme relative a ServiceCallout. Questo è significativo solo quando il TargetEndpoint fa riferimento a un endpoint TLS/SSL.

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

L'URL TargetEndpoint per uno specifico criterio ServiceCallout.

Richiesta proxy
servicecallout.requesturi Stringa Lettura/scrittura

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

Richiesta proxy

system

Specifica l'indirizzo IP del sistema, nonché i dettagli sul proxy.

Nella tabella seguente vengono descritte le proprietà della variabile system:

Proprietà Tipo Lettura/scrittura Descrizione Inizio 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 del data center regione 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 ago 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 a il 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 mensile 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 del giorno della settimana di system.time.

Richiesta proxy
system.time.hour Numero intero Sola lettura

La parte oraria di system.time.

Richiesta proxy
system.time.minute Numero intero Sola lettura

La parte in minuti 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 l'ora in cui questa variabile è stata letta. 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.

Nella tabella seguente vengono descritte le proprietà della variabile target:

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

Il percorso della risorsa (escluso il dominio) al servizio di destinazione, esclusa la 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 sarebbe nullo.

Richiesta target
target.copy.pathsuffix Booleano Lettura/scrittura

Se il valore è "true", la richiesta inoltrata da ProxyEndpoint a TargetEndpoint conserva il percorso (il frammento di percorso dell'URI che segue l'URI definito nella base ProxyEndpoint ).

Richiesta target
target.copy.queryparams Booleano Lettura/scrittura

Quando è "true", la richiesta inoltrata da ProxyEndpoint a TargetEndpoint conserva la query parametri.

Richiesta target
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 del TargetEndpoint. Ciò è significativo solo quando l’oggetto TargetEndpoint si riferisce a un endpoint TLS/SSL.

Richiesta target
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 dell'endpoint di destinazione. 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 a cui viene raggiunto il messaggio dall'endpoint di destinazione.

Richiesta target
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 il TargetEndpoint ha terminato di ricevere l'evento una risposta da parte del target. Ad esempio, "Mer, 21 ago 2013 19:16:47 UTC".

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

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

Il valore del timestamp che specifica quando il TargetEndpoint ha finito di ricevere la risposta dall'obiettivo. Ad esempio, "1534783015000". Questo valore è un numero intero lungo a 64 bit specificando 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 l'oggetto TargetEndpoint ha iniziato a ricevere l'errore una risposta da parte del target. Ad esempio, "Mer, 21 ago 2013 19:16:47 UTC".

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

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

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

Risposta target
target.scheme Stringa Sola lettura

Inizia l'ambito: risposta target
Tipo: stringa
Autorizzazione: lettura/scrittura

Restituisce http o https in base al messaggio di richiesta.

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

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

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

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

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

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

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

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

Richiesta target
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 è a 64 bit (long) numero intero che specifica il numero di millisecondi trascorsi dalla mezzanotte, il giorno 1 gennaio 1970 UTC.

Richiesta target
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 TargetEndpoint o l'URL del target dinamico (se target.url è impostato durante il flusso dei messaggi). La variabile non include nessun parametri di ricerca o elementi di percorso aggiuntivi. Restituisce null se richiamato fuori dall'ambito o altrimenti non viene impostato.

Richiesta target

variable

Un contenitore per la proprietà variable.expectedcn.

Nella tabella seguente vengono descritte le proprietà della variabile variable:

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

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

Richiesta proxy

Per ulteriori informazioni sull'uso di TLS, consulta Introduzione a TLS/SSL.

virtualhost

Specifica i dettagli dell'host virtuale.

Nella tabella seguente vengono descritte le proprietà della variabile virtualhost:

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

Alias host dell'host virtuale che viene hit durante una determinata richiesta.

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 ulteriori informazioni sull'uso degli host virtuali, vedi Configurazione degli host virtuali.