Referenz zu Ablaufvariablen

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Dieser Abschnitt enthält Referenzinformationen zu den Flussvariablen.

Apigee Edge definiert die folgenden Flussvariablen:

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

Jede dieser Variablen wird in den folgenden Abschnitten beschrieben.

apigee

Eine Hilfsvariable, die Informationen zur Ausführungszeit der Richtlinie bereitstellt.

In der folgenden Tabelle werden die Attribute der apigee-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
apigee.metrics.policy.policy_name.timeTaken Ganzzahl Schreibgeschützt Die Zeit in Nanosekunden, die die Ausführung der Richtlinie gedauert hat. Richtlinie

apiproxy

Beschreibt den API-Proxy.

In der folgenden Tabelle werden die Attribute der apiproxy-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
apiproxy.name String Schreibgeschützt Name des API-Proxys. Beispiel: „Mein Proxy“. Proxyanfrage
apiproxy.revision String Schreibgeschützt Die Überarbeitungsnummer eines API-Proxys. Beispiel: „6“. Proxyanfrage

Weitere Informationen zur Arbeit mit API-Proxys finden Sie unter Informationen zu APIs und API-Proxys.

application

Ein Container für das Attribut application.basepath.

In der folgenden Tabelle werden die Attribute der application-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
application.basepath String Schreibgeschützt Der Basispfad der Bereitstellung, der während der API-Bereitstellung angegeben wird. Proxyanfrage

client

Die Anwendung oder das System, die eine Anfrage an den Edge-Router gesendet haben.

In der folgenden Tabelle werden die Attribute der client-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
client.cn String Schreibgeschützt

Der allgemeine Name, der im von der Client-App bereitgestellten TLS/SSL-Zertifikat angegeben wird.

Proxyanfrage
client.country String Schreibgeschützt

Das Land im von der Client-App bereitgestellten TLS/SSL-Zertifikat.

Proxyanfrage
client.email.address String Schreibgeschützt

Die E-Mail-Adresse im von der Client-App bereitgestellten TLS/SSL-Zertifikat.

Proxyanfrage
client.host String Schreibgeschützt

Die HTTP-Host-IP, die der Anfrage zugeordnet ist, die vom ProxyEndpoint empfangen wird.

Proxyanfrage
client.ip String Schreibgeschützt

Die IP-Adresse des Clients oder Systems, der oder das die Nachricht an den Edge-Router sendet. Das kann die ursprüngliche Client-IP-Adresse oder die IP des Load-Balancers sein.

Proxyanfrage
client.locality String Schreibgeschützt

Der Ort (Stadt) im vom Client bereitgestellten TLS/SSL-Zertifikat.

Proxyanfrage
client.organization String Schreibgeschützt Die Organisation im vom Client bereitgestellten TLS/SSL-Zertifikat. (Diese entspricht nicht unbedingt der Organisation auf Apigee Edge.) Proxyanfrage
client.organization.unit String Schreibgeschützt

Die Organisationseinheit im vom Client bereitgestellten TLS/SSL-Zertifikat.

Proxyanfrage
client.port Ganzzahl Schreibgeschützt

Der HTTP-Port, der der ursprünglichen Clientanfrage an den ProxyEndpoint zugeordnet ist.

Proxyanfrage
client.received.end.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der Proxy den Empfang der Anfrage vom ursprünglichen Client im ProxyEndpoint abgeschlossen hat. Beispiel: Mittwoch, 21. August 2013 19:16:47 UTC.

Dieser Zeitwert ist die Stringdarstellung der entsprechenden 32-Bit-Zeitstempelmenge. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert von 1377112607413.

Proxyanfrage
client.received.end.timestamp Long Schreibgeschützt

Der Zeitstempelwert, der angibt, wann der Proxy den Empfang der Anfrage vom ursprünglichen Client im ProxyEndpoint abgeschlossen hat. Dieser Wert ist eine 64-Bit-lange Ganzzahl, die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden enthält.

Proxyanfrage
client.received.start.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der Proxy die Anfrage vom ursprünglichen Client im ProxyEndpoint empfangen hat. Beispiel: Mittwoch, 21. August 2013 19:16:47 UTC.

Dieser Zeitwert ist die Stringdarstellung der entsprechenden 32-Bit-Zeitstempelmenge. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert von 1377112607413.

Proxyanfrage
client.received.start.timestamp Long Schreibgeschützt

Der Zeitstempelwert, der angibt, wann der Proxy den Empfang der Anfrage vom ursprünglichen Client im ProxyEndpoint begonnen hat. Dieser Wert ist eine 64-Bit-lange Ganzzahl, die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden enthält.

Proxyanfrage
client.scheme String Schreibgeschützt

Gibt HTTP oder HTTPS zurück, je nachdem, welches Transporttyp die Client-App zum Senden der Anfragenachricht verwendet.

Proxyanfrage
client.sent.end.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der Proxy den Versand der Antwort vom ProxyEndpoint an den Client abgeschlossen hat. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC".

Dieser Wert ist eine String-Darstellung des entsprechenden 32-Bit-client.sent.end.timestamp. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

PostClientFlow
client.sent.end.timestamp Long Schreibgeschützt Der Zeitstempelwert, der angibt, wann der ProxyEndpoint die Antwort an die ursprüngliche Client-Anwendung zurückgibt Dieser Wert ist eine 64-Bit-Ganzzahl (long), die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden enthält. PostClientFlow
client.sent.start.time String Schreibgeschützt Die Uhrzeit im Stringformat, zu der der ProxyEndpoint begonnen hat, die Antwort an die ursprüngliche Client-Anwendung zurückzugegeben. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC".

Dieser Wert ist eine String-Darstellung des entsprechenden 32-Bit-client.sent.start.timestamp. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

PostClientFlow
client.sent.start.timestamp Long Schreibgeschützt Zeitpunkt, zu dem der Proxy begonnen hat, die Antwort vom ProxyEndpoint an den Client zu senden. Dieser Wert wird als 64-Bit-Ganzzahl (long) ausgedrückt, die die Anzahl der Millisekunden angibt, die seit Mitternacht vom 1. Januar 1970 (UTC) vergangen sind. PostClientFlow
client.ssl.enabled String Schreibgeschützt

"wahr", wenn der ProxyEndpoint für TLS/SSL konfiguriert ist; andernfalls "falsch".

Proxyanfrage
client.state String Schreibgeschützt

Der Status im vom Client bereitgestellten TLS/SSL-Zertifikat.

Proxyanfrage

current

Enthält Informationen zum aktuellen API-Proxy-Ablauf.

In der folgenden Tabelle werden die Attribute der current-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
current.flow.name String Schreibgeschützt Der Name des Ablaufs, der gerade ausgeführt wird, z. B. "PreFlow", "PostFlow" oder der Name eines bedingten Ablaufs. Proxyanfrage
current.flow.description String Schreibgeschützt Die Beschreibung des derzeit ausgeführten Ablaufs. Dies entspricht dem Wert des Elements <Description> in der XML-Konfiguration des Ablaufs. Proxyanfrage

Sie können diese Eigenschaften in der Trace-Ansicht der Edge-Benutzeroberfläche anzeigen. Diese Eigenschaften sind jedoch nicht standardmäßig in der Trace-Ansicht der klassischen UI sichtbar.

environment

Ein Container für das Attribut environment.name.

In der folgenden Tabelle werden die Attribute der environment-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
environment.name String Schreibgeschützt Name der Umgebung, in der die Transaktion ausgeführt wurde. Proxyanfrage

error

Ein Kontextobjekt, das eine Fehlermeldung im Fehlerablauf darstellt.

In der folgenden Tabelle werden die Attribute der error-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
error message Lesen/Schreiben Fehler vom Typ message. Dies ist ein Kontextobjekt im Fehlerablauf. Fehler
error.content String Lesen/Schreiben Inhalt des Fehlers Fehler
error.message String Schreibgeschützt

Meldung, die mit einem Fehler verknüpft ist, dessen Wert nur vor der Ausführung des Fehlerablaufs verfügbar ist.

Fehler
error.status.code Ganzzahl Schreibgeschützt

Der mit dem Fehler verknüpfte HTTP-Statuscode. Beispiel: „400“

Error
error.reason.phrase String Schreibgeschützt

Die dem Fehler zugeordnete Begründung. Beispiel: „Fehlerhafte Anfrage“.

Error
error.transport.message TransportMessage Schreibgeschützt

Beliebiger Fehler vom Typ TransportMessage.

Error
error.state Ganzzahl Schreibgeschützt

Status im Ablauf, bei dem ein Fehler aufgetreten ist.

Fehler
error.header.header_name String Lesen/Schreiben

Antwortheader abrufen oder festlegen.

Error

fault

Eine Ablaufvariable, für die ein Laufzeitfehlercode festgelegt wird, wenn eine Richtlinie einen Fehler auslöst. Fehlercodewerte sind für jede Richtlinie spezifisch.

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
fault.fault_name String Schreibgeschützt fault_name ist der Name des Fehlers, der in der Tabelle Laufzeitfehler beschrieben ist, die in jedem Richtlinienreferenz-Thema enthalten sind. Error

is

Ein Container für das Attribut is.error.

In der folgenden Tabelle werden die Attribute der is-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
is.error Boolesch Schreibgeschützt

Fehler-Flag

Proxyanfrage

loadbalancing

Stellt Informationen zum Load-Balancing-Status des TargetEndpoints bereit.

In der folgenden Tabelle werden die Attribute der loadbalancing-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
loadbalancing.failedservers Stringarray Schreibgeschützt

Liste der fehlgeschlagenen TargetServer während des Load-Balancings am TargetEndpoint.

Ziel-Antwort
loadbalancing.isfallback Boolesch Schreibgeschützt

"wahr", wenn das Fallback für den TargetServer aktiviert ist, der beim Load-Balancing am TargetEndpoint aufgerufen wird.

Ziel-Antwort
loadbalancing.targetserver String Schreibgeschützt

TargetServer, der beim Load-Balancing am TargetEndpoint aufgerufen wird. Wird nur festgelegt, wenn das <Path>-Element beim Definieren des Load-Balancer-Elements festgelegt wird.

Ziel-Antwort

message

Ein Kontextobjekt mit demselben Wert wie request im Anfrageablauf oder wie response im Antwortablauf oder wie error im Fehlerablauf.

In der folgenden Tabelle werden die Attribute der message-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
message message Lesen/Schreiben

Ein Kontextobjekt mit demselben Wert wie request im Anfrageablauf oder wie response im Antwortablauf oder wie error im Fehlerablauf.

Proxyanfrage
message.content String Lesen/Schreiben

Inhalt der Anfrage, Antwort oder Fehlermeldung.

Proxyanfrage
message.formparam.param_name String Lesen/Schreiben

Wert des angegebenen Formularparameters.

Proxyanfrage
message.formparam.param_name.
 values
Sammlung Schreibgeschützt

Alle Werte des angegebenen Formularparameters in der Nachricht.

Proxyanfrage
message.formparam.param_name.
 values.count
Ganzzahl Schreibgeschützt

Anzahl der angegebenen Formularparameter in der Nachricht./p>

Proxyanfrage
message.formparams.count Ganzzahl Schreibgeschützt

Anzahl aller Formularparameter in der Nachricht.

Proxyanfrage
message.formparams.names Sammlung Schreibgeschützt

Wert aller Formularparameter in der Nachricht.

Proxyanfrage
message.formstring String Schreibgeschützt

Wert des Formular-Strings in der Nachricht.

Proxyanfrage
message.header.header_name String Lesen/Schreiben

Ruft den Wert des angegebenen HTTP-Headers in der Nachricht ab oder legt ihn fest. Wenn der Header ein Komma enthält, erhalten Sie nach dem Lesen nur das Segment des Textes bis zum ersten Komma. Wenn Sie den gesamten Header abrufen möchten, verwenden Sie das Formular request.header.header_name.
 values
.

Proxyanfrage
message.header.header_name.N String Lesen/Schreiben

Der Wert des Nth-spezifischen Headerwerts in der Nachricht, entweder als Anfrage oder Antwort, abhängig vom Status des Ablaufs. Apigee Edge teilt Header-Textwerte durch Kommas. Beachten Sie, dass der Index, dessen Wert für N verwendet wird, 1-basiert und nicht 0-basiert ist.

Beispiel: Wenn der Cache-control-Header "public,maxage=16544" lautet, ist der Rückgabewert von message.header.cache-control.1 "maxage=16544".

Proxyanfrage
message.header.header_name.
 values
Sammlung Schreibgeschützt

Alle Werte des angegebenen HTTP-Header-Namens in der Nachricht.

Proxyanfrage
message.header.header_name.
 values.count
Ganzzahl Schreibgeschützt

Anzahl der Werte des angegebenen HTTP-Header-Namens in der Nachricht.

Proxyanfrage
message.headers.count Ganzzahl Schreibgeschützt

Wert aller HTTP-Header in der Nachricht.

Proxyanfrage
message.headers.names Sammlung Schreibgeschützt

Wert aller HTTP-Header in der Nachricht.

Proxyanfrage
message.path String Lesen/Schreiben

Der vollständige Pfad der Anfragenachricht in der URL ohne Abfrageparameter.

Proxyanfrage
message.queryparam.param_name String Schreibgeschützt

Gibt den angegebenen Abfrageparameter der Nachrichten zurück.

Proxyanfrage
message.queryparam.param_name.N String Lesen/Schreiben

Der Wert des Nten Abfrageparameters in der Nachricht. Beispiel: Wenn request.querystring "a=hello&a=world" ist, ist der Rückgabewert von message.queryparam.a.1 "hello".

Wenn Sie mehrere Werte für einen einzelnen Abfrageparameternamen schreiben möchten, z. B. "type=siteid:1&type=language:us-en&type=currency:USD", legen Sie Folgendes fest:

  • message.queryparam.type.1 auf "siteid:1"
  • message.queryparam.type.2 auf "language:en-us"
  • message.queryparam.type.3 auf "currency:USD"
Proxyanfrage
message.queryparam.param_name.
 values
Sammlung Schreibgeschützt

Alle Werte eines bestimmten Abfrageparameters in der Nachricht, formatiert als durch Kommas getrennte Liste.

Beispiel: Wenn der Abfragestring a=hello&a=world lautet, ist der Wert von message.queryparam.a.values "['hello', 'world']".

Proxyanfrage
message.queryparam.param_name.
 values.count
Ganzzahl Schreibgeschützt

Die Gesamtzahl der angegebenen Abfrageparameter, die der Anfrage zugeordnet sind, die von der Client-App an den ProxyEndpoint gesendet wurde.

Proxyanfrage
message.queryparams.count Ganzzahl Schreibgeschützt

Die Gesamtzahl aller Abfrageparameter, die der Anfrage zugeordnet sind, die von der Client-App an den ProxyEndpoint gesendet wurde.

Proxyanfrage
message.queryparams.names Sammlung Schreibgeschützt

Eine Liste aller Abfrageparameter, die der Anfrage zugeordnet sind, die von der Client-App an den ProxyEndpoint gesendet wurde.

Wie Sie die Abfrageparameternamen mit JavaScript iterieren, erfahren Sie im Apigee Community-Beitrag: How do you iterate Collection from "request.queryparams.names" in JS? in der Apigee-Community.

Proxyanfrage
message.querystring String Schreibgeschützt

Ein String mit allen Abfrageparameternamen und -werten, die der Anfrage zugeordnet sind, die von der Client-App an den ProxyEndpoint gesendet wurde.

Für die Anfrage "http://api.apifactory.com/inventors?name=nick&surname=danger" ist der Wert von message.querystring beispielsweise "name=nick&surname=danger".

Proxyanfrage
message.reason.phrase String Schreibgeschützt

ReasonPhrase der Antwortnachricht vom Ziel.

Ziel-Antwort
message.status.code Ganzzahl Schreibgeschützt

HTTP-Statuscode der Antwortnachricht vom Ziel.

Ziel-Antwort
message.transport.message TransportMessage Schreibgeschützt

Nachricht vom Typ TransportMessage. Dies ist ein Kontextobjekt.

Proxyanfrage
message.uri String Schreibgeschützt

Der vollständige URI-Pfad (nach der Domain-URL), einschließlich Abfrageparametern.

Für die Anfrage "http://api.apifactory.com/inventors?name=nikola&surname=tesla" gibt diese Variable beispielsweise "inventors?name=nikola&surname=tesla" zurück.

Proxyanfrage
message.verb String Schreibgeschützt

Das HTTP-Verb (GET, PUT, POST, DELETE usw.), das mit der Anfrage verknüpft ist.

Proxyanfrage
message.version String Lesen/Schreiben

Die HTTP-Version, die mit der Anfrage verknüpft ist, die von der Client-App an den ProxyEndpoint gesendet wurde.

Proxyanfrage

Weitere Informationen zu Nachrichten finden Sie in der Funktionsreferenz zu Nachrichtenvorlagen.

messageid

Ein Container für die global eindeutige ID für die Anfrage.

In der folgenden Tabelle werden die Attribute der messageid-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
messageid String Schreibgeschützt

Enthält die global eindeutige ID für die Anfrage, einschließlich des Hostnamens des Routers. Mit dieser ID können an den Router empfangene Anfragen nachverfolgt werden, nachdem sie an den Message Processor gesendet wurden.

Diese ID wird in Edge-Fehlerlogs protokolliert, um die messageid mit den Fehlern in Beziehung zu setzen.

Proxyanfrage

organization

Ein Container für das Attribut organization.name.

In der folgenden Tabelle werden die Attribute der organization-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
organization.name String Schreibgeschützt

Name der Organisation.

Proxyanfrage

Weitere Informationen zu Organisationen finden Sie unter Informationen zu Organisationen.

proxy

Die API-Proxy-Konfiguration.

In der folgenden Tabelle werden die Attribute der proxy-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
proxy.basepath String Schreibgeschützt

Der Wert des Basispfads in Ihrer API-Proxy-Konfiguration. Der Basispfad ist das URI-Fragment, das auf den Host in der URL folgt. Bedingte Ablauf-URIs folgen dem Basispfad.

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

  • Host ist „myorg-test.apigee.net“, einschließlich des Namens und der Umgebung der Organisation
  • Basispfad ist "/v2/weatherapi"

Dies erfahren Sie, wenn Sie die API-Proxy-Definition lesen oder den Wert der proxy.basepath-Variable prüfen. Das Suffix des Proxy-Pfads folgt dem Basispfad ("/forecastrss"), genau wie die Abfrageparameter.

Wenn Sie in der API-Proxykonfiguration einen dynamischen Basispfad wie "/v2/*/weatherapi" definieren, wird für diese Variable der dynamische Pfad festgelegt ("/v2/*/weatherapi"), obwohl der Basispfad in einen statischen Wert aufgelöst wird, z. B. "/v2/foo/weatherapi".

Proxyanfrage
proxy.client.ip String Schreibgeschützt

Die X-Forwarded-For-Adresse des eingehenden Aufrufs. Dies ist die IP-Adresse, die Edge vom letzten externen TCP-Handshake erhalten hat. Dies kann der aufrufende Client oder ein Load-Balancer sein.

Proxyanfrage
proxy.name String Schreibgeschützt

Das Namensattribut, das für den ProxyEndpoint konfiguriert wurde.

Proxyanfrage
proxy.pathsuffix String Schreibgeschützt

Der Wert des Basispfadsuffix des API-Proxys, der vom Client gesendet und am ProxyEndpoint empfangen wird.

Der Basispfad wird als Pfadkomponente definiert, die den API-Proxy eindeutig identifiziert. Die öffentliche URL eines API-Proxys besteht aus dem Namen Ihrer Organisation, der Umgebung, in der der Proxy bereitgestellt wird, dem Basispfad, dem Basispfadsuffix und einem beliebigen Abfrageparameter.

In einer Anfrage an http://myorg-test.apigee.net/v2/weatherapi/forecastrss?w=12797282 lautet das Basispfadsuffix beispielsweise "/forecastrss".

Proxyanfrage
proxy.url String Schreibgeschützt

Ruft die vollständige URL ab, die der Proxy-Anfrage zugeordnet ist, die vom ProxyEndpoint erhalten wird, einschließlich eventuell vorhandener Abfrageparameter. Der Host der URL ist immer localhost Der Proxy wird mit <LocalTargetConnection> aufgerufen, um Führen Sie eine Proxy-Verkettung aus.

Ein Beispiel zum Erstellen einer request-URL mit dem ursprünglichen Host finden Sie unter Zugriffsanfragenachrichten.

Proxyanfrage

Weitere Informationen zur Arbeit mit API-Proxys finden Sie unter Informationen zu APIs und API-Proxys.

request

Die vollständige Anfrage, einschließlich eventuell vorhandener Nutzlasten.

Weitere Informationen zu Anfragedaten finden Sie unter Wie werden Anfragedaten an den Back-End-Server übergeben?

In der folgenden Tabelle werden die Attribute der request-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
request message Schreibgeschützt

Die vollständige Anfrage, einschließlich eventuell vorhandener Nutzlasten.

Proxyanfrage
request.content String Lesen/Schreiben

Ruft die Nutzlast der Anfragenachricht ab oder legt sie fest.

Proxyanfrage
request.formparam.param_name String Lesen/Schreiben

Ruft den Wert des angegebenen Formularparameters in der Anfrage ab, die von der Client-App gesendet wurde, oder legt diesen fest.

Proxyanfrage
request.formparam.param_name.
 values
Sammlung Schreibgeschützt

Alle Werte eines bestimmten Formularparameters in der Anfrage, formatiert als durch Kommas getrennte Liste.

Beispiel: Wenn die Nutzlast "a=hello&x=greeting&a=world" lautet, ist der Wert von request.formparam.a.values "['hello', 'world']".

Proxyanfrage
request.formparam.param_name.
 values.count
Ganzzahl Schreibgeschützt

Anzahl aller Werte für den angegebenen Formularparameter, der der Anfrage zugeordnet ist.

Proxyanfrage
request.formparam.param_name.N String Lesen/Schreiben

Der Wert des Nten spezifischen Formularparameters in der Nachricht. Wenn der Formular-String beispielsweise "a=hello&a=world" lautet, ist der Rückgabewert von request.formparam.a.1 "hello".

Proxyanfrage
request.formparams.count Ganzzahl Schreibgeschützt

Anzahl aller Formularparameter, die der Anfrage zugeordnet sind, die von der Client-App gesendet wurde.

Proxyanfrage
request.formparams.names Sammlung Schreibgeschützt

Eine Liste aller Formularparameternamen, die mit der Anfrage verknüpft sind.

Proxyanfrage
request.formstring String Schreibgeschützt

Der vollständige formparam in der Anfrage, die von der Client-App gesendet wurde.

Beispiel: "name=test&type=first&group=A".

Proxyanfrage
request.header.header_name String Lesen/Schreiben

Ruft den Wert eines bestimmten Headers in der Anfrage ab oder legt ihn fest. Wenn der Header ein Komma enthält, erhalten Sie nach dem Lesen nur das Segment des Textes bis zum ersten Komma.

Wenn Sie den gesamten Header abrufen möchten, verwenden Sie das Formular request.header.header_name.values.

Proxyanfrage
request.header.header_name.N String Lesen/Schreiben

Der Wert des Nten spezifischen Headerwerts in der Anfrage. Apigee Edge teilt Header-Textwerte durch Kommas. Beachten Sie, dass der Index, dessen Wert für N verwendet wird, 1-basiert und nicht 0-basiert ist.

Wenn der Cache-control-Header beispielsweise "public, maxage=16544" lautet, ist der Rückgabewert von request.header.cache-control.1 "maxage=16544".

Proxyanfrage
request.header.header_name.
 values
Sammlung Schreibgeschützt

Alle Werte eines bestimmten Headers in der Anfrage.

Proxyanfrage
request.header.header_name.
 values.count
Ganzzahl Schreibgeschützt

Anzahl aller Werte eines bestimmten Headers in der Anfrage.

Proxyanfrage
request.headers.count Ganzzahl Schreibgeschützt

Anzahl aller Header der Anfrage.

Proxyanfrage
request.headers.names Sammlung Schreibgeschützt

Namen aller Header der Anfrage.

Proxyanfrage
request.path String Schreibgeschützt

Der Ressourcenpfad ohne Proxy zum Back-End-Dienst ohne Abfrageparameter.

Beispiel: Der URI zum Back-End-Dienst ist „https://beispiel.de/rest/api/latest“, dann ist der Wert von request.path ist „/rest/api/latest“.

Proxyanfrage
request.queryparam.param_name String Lesen/Schreiben

Der Wert eines bestimmten Abfrageparameters in der Anfrage.

Proxyanfrage
request.queryparam.param_name.N String Lesen/Schreiben

Der Wert des Nten Abfrageparameters in der Anfrage.

Beispiel: Wenn request.querystring "a=hello&a=world" ist, ist der Rückgabewert von request.queryparam.a.1 "hello".

Wenn Sie mehrere Werte für einen einzelnen Abfrageparameternamen schreiben möchten, z. B. "type=siteid:1&type=language:us-en&type=currency:USD", legen Sie Folgendes fest:

  • request.queryparam.type.1 auf "siteid:1"
  • request.queryparam.type.2 auf "language:en-us"
  • request.queryparam.type.3 auf "currency:USD"
Proxyanfrage
request.queryparam.param_name.
 values
Sammlung Schreibgeschützt

Alle Werte eines bestimmten Abfrageparameters in der Anfrage, formatiert als durch Kommas getrennte Liste.

Wenn request.querystring beispielsweise "a=hello&b=lovely&a=world" lautet, ist der Wert von request.queryparam.a.values "['hello', 'world']".

Proxyanfrage
request.queryparam.param_name.
 values.count
Ganzzahl Schreibgeschützt

Die Anzahl aller Werte eines bestimmten Abfrageparameters in der Anfrage.

Proxyanfrage
request.queryparams.count Ganzzahl Schreibgeschützt

Die Anzahl aller Abfrageparameter in der Anfrage.

Proxyanfrage
request.queryparams.names Sammlung Schreibgeschützt

Die Namen aller Abfrageparameter in der Anfrage.

Informationen zum Iterieren der Abfrageparameter mit JavaScript finden Sie unter How do you iterate Collection from "request.queryparams.names" in JS? in der Apigee-Community.

Proxyanfrage
request.querystring String Schreibgeschützt

Die vollständige Liste der Abfrageparameter in der von der Clientanwendung gesendeten Anfrage.

Wenn die Anfrage beispielsweise "http://host.com/123?name=first&surname=second&place=address" lautet, gibt diese Variable "name=first&surname=second&place=address" zurück.

Proxyanfrage
request.transportid String Schreibgeschützt

ID der Anfrage vom Typ TransportMessage. Dies ein Kontextobjekt.

Proxyanfrage
request.transport.message Transport-Message Schreibgeschützt

Anfrage vom Typ TransportMessage. Dies ist ein Kontextobjekt.

Proxyanfrage
request.uri String Schreibgeschützt

In einem API-Proxy wird der Proxy <BasePath> im ProxyEndpoint (zusätzlich zur Basis-URL des Proxys) der Zieldienst-URL im TargetEndpoint zugeordnet. Beispiel:

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

Verweist auf

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

In der Anfrage ist request.uri der Proxy-Basispfad und der Rest der Adresse, einschließlich Abfrageparameter.

In der Antwort ist request.uri der Rest der Adresse, einschließlich Abfrageparameter, nach der HTTPTargetConnection.

Der Unterschied besteht darin, dass die ursprüngliche Anfrage an den Proxy gesendet wurde, der Proxy jedoch eine weitere Anfrage an den Zieldienst sendet.

Angenommen, der folgende Aufruf erfolgt an unseren Beispiel-Proxy mit dem Basispfad „/my-mock-proxy“:

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

Der Proxy ruft Folgendes auf:

http://mocktarget.apigee.net

Dadurch wird „/user?user=Dude“ an diese URL angehängt.

  • Anfrage: request.uri = "/my-mock-proxy/user?user=Dude"
  • Antwort: request.uri = "/user?user=Dude"
Proxyanfrage (unterschiedliche Antworten)
request.url String Schreibgeschützt

Die vollständige URL der an den Zielendpunkt gesendeten Anfrage, einschließlich der Abfragestringparameter, jedoch nicht der Portnummer (falls angegeben).

Wenn Sie beispielsweise einen Beispiel-Proxy "http://my_org-test.apigee.net/my-mock-proxy/user?user=Dude" aufrufen und der Zielendpunkt " http://example.com:8080" ist, lautet der Wert:

  • Anfrage: –
  • Antwort: "http://example.com/user?user=Dude"
Ziel-Antwort
request.verb String Schreibgeschützt

Das für die Anfrage verwendete HTTP-Verb. Beispiel: „GET“, „PUT“ und „DELETE“.

Proxyanfrage
request.version String Schreibgeschützt

Die HTTP-Version der Anfrage. Beispiel: „1.1“.

Proxyanfrage

response

Die vollständige Antwort, einschließlich eventuell vorhandener Nutzlasten.

In der folgenden Tabelle werden die Attribute der response-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
response message Lesen/Schreiben

Vom Ziel zurückgegebene vollständige Antwortnachricht.

Ziel-Antwort
response.content String Lesen/Schreiben

Nutzlastinhalt der Antwortnachricht, die vom Ziel zurückgegeben wird.

Ziel-Antwort
response.formparam.param_name String Lesen/Schreiben

Der Wert eines Formularparameters in der Antwort.

Ziel-Antwort
response.formparam.param_name.
 values.count
Ganzzahl Schreibgeschützt

Anzahl aller Werte des angegebenen Formularparameters in der Antwort.

Ziel-Antwort
response.formparams.count Ganzzahl Schreibgeschützt

Anzahl aller Formularparameter in der Antwort.

Ziel-Antwort
response.formparams.names Sammlung Schreibgeschützt

Die Namen aller Formularparameter in der Antwort.

Ziel-Antwort
response.header.header_name String Lesen/Schreiben

Ruft den Wert eines angegebenen HTTP-Headers in der Antwort ab oder legt ihn fest.

Wenn der Kopfzeilentext ein Komma enthält, leitet Apigee Edge mehrere Werte ab. In diesem Fall gibt response.header.header_name nur den ersten Wert zurück.

Verwenden Sie zum Lesen des gesamten Headers das Formular response.header.header_name.values.

Ziel-Antwort
response.header.header_name.
 values
Sammlung Schreibgeschützt

Alle Werte eines angegebenen HTTP-Headers in der Antwort.

Ziel-Antwort
response.header.header_name.
 values.count
Ganzzahl Schreibgeschützt

Anzahl aller Werte des angegebenen HTTP-Headers in der Antwort.

Ziel-Antwort
response.header.header_name.N String Lesen/Schreiben

Der Wert des Nten spezifischen Headerwerts in der Antwort. Apigee Edge teilt Header-Textwerte durch Kommas. Beachten Sie, dass der Index, dessen Wert für N verwendet wird, 1-basiert und nicht 0-basiert ist.

Wenn der Header Cache-control z. B. "public, maxage=16544" lautet, gibt response.header.cache-control.1 den Wert "maxage=16544" zurück.

Ziel-Antwort
response.headers.count Ganzzahl Schreibgeschützt

Anzahl aller Header der Antwort.

Ziel-Antwort
response.headers.names Sammlung Schreibgeschützt

Die Namen aller Header in der Antwort.

Ziel-Antwort
response.reason.phrase String Lesen/Schreiben

Die Begründung der Antwort auf eine bestimmte Anfrage.

Ziel-Antwort
response.status.code Ganzzahl Lesen/Schreiben

Der Antwortcode, der für eine Anfrage zurückgegeben wurde. Mit dieser Variable können Sie den Statuscode der Antwort überschreiben, der in message.status.code gespeichert ist. Weitere Informationen finden Sie unter message.

Ziel-Antwort
response.transport.message String Schreibgeschützt

Antwort vom Typ TransportMessage. Dies ist ein Kontextobjekt.

Ziel-Antwort

route

Gibt die Namen von <RouteRule> und den TargetEndpoint an.

In der folgenden Tabelle werden die Attribute der route-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
route.name String Schreibgeschützt

Der Name des <RouteRule>, der im ProxyEndpoint ausgeführt wurde. Beispiel: „default“. Eine RouteRule verweist auf einen API-Proxy-TargetEndpoint, der ausgeführt werden soll.

Zielanfrage
route.target String Schreibgeschützt

Der Name des ausgeführten TargetEndpoint. Beispiel: „default“.

Zielanfrage

router

Ein Container für das Attribut router.uuid, das eingestellt wird.

In der folgenden Tabelle werden die Attribute der router-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
router.uuid String Schreibgeschützt

Verworfen und gibt null zurück. Früher die UUID des Routers, der den Proxy verarbeitet.

Proxyanfrage

servicecallout

Beschreibt den TargetEndpoint für eine ServiceCallout-Richtlinie.

In der folgenden Tabelle werden die Attribute der servicecallout-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
servicecallout.policy_name.expectedcn String Lesen/Schreiben

Der erwartete Common Name des TargetEndpoint wie in einer ServiceCallout-Richtlinie angegeben. Dies ist nur sinnvoll, wenn der TargetEndpoint auf mit einem TLS/SSL-Endpunkt.

Proxyanfrage
servicecallout.policy_name.target.url String Lesen/Schreiben

Die TargetEndpoint-URL einer bestimmten ServiceCallout-Richtlinie.

Proxyanfrage
servicecallout.requesturi String Lesen/Schreiben

Der TargetEndpoint-URI für eine ServiceCallout-Richtlinie. Der URI ist die TargetEndpoint-URL ohne Protokoll- und Domain-Spezifikation.

Proxyanfrage

system

Gibt die IP-Adresse des Systems sowie Details zum Proxy an.

In der folgenden Tabelle werden die Attribute der system-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
system.interface.interface_name String Schreibgeschützt

IP-Adresse des Systems.

Proxyanfrage
system.pod.name String Schreibgeschützt

Der Name des Pods, in dem der Proxy ausgeführt wird.

Proxyanfrage
system.region.name String Schreibgeschützt

Der Name des Rechenzentrums <ph type="x-smartling-placeholder"></ph> Region, in der der Proxy ausgeführt wird.

Proxyanfrage
system.time String Schreibgeschützt

Der Zeitpunkt, zu dem diese Variable gelesen wurde. Beispiel: „Mittwoch, 21. August 2013 19:16:47 UTC“.

Dieser Wert ist die String-Darstellung des entsprechenden Werts von system.timestamp. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

Proxyanfrage
system.time.year Ganzzahl Schreibgeschützt

Der Jahresteil von system.time.

Proxyanfrage
system.time.month Ganzzahl Schreibgeschützt

Der Monatsteil von system.time.

Proxyanfrage
system.time.day Ganzzahl Schreibgeschützt

Der Tagesteil von system.time.

Proxyanfrage
system.time.dayofweek Ganzzahl Schreibgeschützt

Der Wochentagsteil von system.time.

Proxyanfrage
system.time.hour Ganzzahl Schreibgeschützt

Der Stundenteil von system.time.

Proxyanfrage
system.time.minute Ganzzahl Schreibgeschützt

Der Minutenteil von system.time.

Proxyanfrage
system.time.second Ganzzahl Schreibgeschützt

Der zweite Teil von system.time.

Proxyanfrage
system.time.millisecond Ganzzahl Schreibgeschützt

Der Millisekundenteil von system.time.

Proxyanfrage
system.time.zone String Schreibgeschützt

Zeitzone des Systems.

Proxyanfrage
system.timestamp Long Schreibgeschützt

Die 64-Bit-lange Ganzzahl, die die Zeit angibt, zu der diese Variable gelesen wurde. Dieser Wert ist die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden. Beispiel: "1534783015000".

Proxyanfrage
system.uuid String Schreibgeschützt

Die UUID des Nachrichtenverarbeiters des Proxys.

Proxyanfrage

target

Beschreibt das Ziel der Anfrage.

In der folgenden Tabelle werden die Attribute der target-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
target.basepath String Schreibgeschützt

Der Ressourcenpfad (mit Ausnahme der Domain) zum Zieldienst ohne Abfrageparameter, der im TargetEndpoint des Proxys definiert ist.

Angenommen, ein API-Proxy ruft das folgende Ziel auf:

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

In diesem Beispiel lautet das target.basepath "/user".

Wenn das Ziel dies wäre:

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

wäre das target.basepath null.

Zielanfrage
target.copy.pathsuffix Boolesch Lesen/Schreiben

Bei "wahr" behält die Anfrage, die vom ProxyEndpoint an den TargetEndpoint weitergeleitet wird, das Pfadsuffix (das URI-Pfadfragment, das auf den im ProxyEndpoint-Basispfad definierten URI folgt).

Zielanfrage
target.copy.queryparams Boolesch Lesen/Schreiben

Bei "wahr" behalten Anfragen, die vom ProxyEndpoint an den TargetEndpoint weitergeleitet werden, Abfrageparameter bei.

Zielanfrage
target.country String Schreibgeschützt

Das Land im vom Zielserver bereitgestellten TLS/SSL-Zertifikat.

Ziel-Antwort
target.cn String Schreibgeschützt

Der Common Name des TargetEndpoint. Dies ist nur sinnvoll, wenn der TargetEndpoint bezieht sich auf einen TLS/SSL-Endpunkt.

Zielanfrage
target.email.address String Schreibgeschützt

Die E-Mail-Adresse des vom Zielserver bereitgestellten TLS/SSL-Zertifikats.

Ziel-Antwort
target.expectedcn String Lesen/Schreiben

Erwarteter Common Name des TargetEndpoint. Dies ist nur sinnvoll, wenn der TargetEndpoint verweist auf einen TLS/SSL-Endpunkt.

Proxyanfrage
target.host String Schreibgeschützt

Der Domainname des Zieldienstes, der die Antwort an den API-Proxy zurückgibt.

Ziel-Antwort
target.ip String Schreibgeschützt

Die IP-Adresse des Zieldienstes, die die Antwort an den API-Proxy zurückgibt.

Ziel-Antwort
target.locality String Schreibgeschützt

Ort (Stadt) im vom Zielserver bereitgestellten TLS/SSL-Zertifikat.

Ziel-Antwort
target.name String Schreibgeschützt

Ziel der Nachricht vom TargetEndpoint

Zielanfrage
target.organization String Schreibgeschützt

Organisation im vom Zielserver bereitgestellten TLS/SSL-Zertifikat.

Ziel-Antwort
target.organization.unit String Schreibgeschützt

Organisationseinheit im vom Zielserver bereitgestellten TLS/SSL-Zertifikat.

Ziel-Antwort
target.port Ganzzahl Schreibgeschützt

Die Portnummer des Zieldienstes, der die Antwort an den API-Proxy zurückgibt.

Ziel-Antwort
target.received.end.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der TargetEndpoint den Empfang der Antwort vom Ziel abgeschlossen hat. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC".

Dieser Zeitwert ist die Stringdarstellung der entsprechenden 32-Bit-Zeitstempelmenge. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

Ziel-Antwort
target.received.end.
  timestamp
Long Schreibgeschützt

Der Zeitstempelwert, der angibt, wann der TargetEndpoint den Empfang der Antwort vom Ziel abgeschlossen hat. Beispiel: "1534783015000". Dieser Wert ist eine 64-Bit-lange Ganzzahl, die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden angibt.

Ziel-Antwort
target.received.start.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der TargetEndpoint den Empfang der Antwort vom Ziel begonnen hat. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC".

Dieser Zeitwert ist die Stringdarstellung der entsprechenden 32-Bit-Zeitstempelmenge. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

Ziel-Antwort
target.received.start.
  timestamp
Long Schreibgeschützt

Der Zeitstempelwert, der angibt, wann der TargetEndpoint begonnen hat, die Antwort vom Ziel zu empfangen. Beispiel: "1534783015000". Dieser Wert ist eine 64-Bit-lange Ganzzahl, die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden angibt.

Ziel-Antwort
target.scheme String Schreibgeschützt

Bereich beginnt: Zielantwort
Typ: String
Berechtigung: Lesen/Schreiben

Gibt je nach Anfragenachricht „http“ oder „https“ zurück.

Zielanfrage
target.sent.end.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der Proxy aufgehört hat, die Anfrage an die im TargetEndpoint angegebene URL zu senden. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC".

Dieser Zeitwert ist die Stringdarstellung der entsprechenden 32-Bit-Zeitstempelmenge. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

Zielanfrage
target.sent.end.timestamp Long Schreibgeschützt

Der Zeitstempelwert, der angibt, wann der Versand der Anfrage an die im TargetEndpoint angegebene URL durch den Proxy abgeschlossen wurde. Beispiel: "1377112607413". Dieser Wert ist eine 64-Bit-lange Ganzzahl, die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden enthält.

Zielanfrage
target.sent.start.time String Schreibgeschützt

Die Uhrzeit im Stringformat, zu der der Proxy begonnen hat, die Anfrage an die im TargetEndpoint angegebene URL zu senden. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC".

Dieser Zeitwert ist die Stringdarstellung der entsprechenden 32-Bit-Zeitstempelmenge. Beispiel: "Mittwoch, 21. August 2013 19:16:47 UTC" entspricht dem Zeitstempelwert 1377112607413.

Zielanfrage
target.sent.start.timestamp Long Schreibgeschützt

Der Zeitstempelwert, der angibt, wann der Proxy begonnen hat, die Anfrage an die im TargetEndpoint angegebene URL zu senden. Beispiel: "1534783015000". Dieser Wert ist eine 64-Bit-lange Ganzzahl, die die Anzahl der seit Mitternacht am 1. Januar 1970 verstrichenen Millisekunden angibt.

Zielanfrage
target.ssl.enabled Boolesch Schreibgeschützt

Gibt an, ob der TargetEndpoint mit TLS/SSL ausgeführt wird.

Proxyanfrage
target.state String Schreibgeschützt

Status des vom Zielserver bereitgestellten TLS/SSL-Zertifikats.

Ziel-Antwort
target.url String Lesen/Schreiben

Die URL, die in der XML-Datei „TargetEndpoint“ oder in der dynamischen Ziel-URL konfiguriert ist, wenn target.url während des Nachrichtenflusses festgelegt wird. Die Variable enthält keine zusätzlichen Pfadelemente oder Suchparameter. Gibt null zurück, wenn sie außerhalb des Bereichs liegt oder anderweitig nicht festgelegt ist.

Zielanfrage

variable

Ein Container für das Attribut variable.expectedcn.

In der folgenden Tabelle werden die Attribute der variable-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
variable.expectedcn String Lesen/Schreiben

Variable, die für den allgemeinen Namen freigegeben wird, wenn sie auf TLS/SSL ausgeführt wird.

Proxyanfrage

Weitere Informationen zur Arbeit mit TLS finden Sie in der Einführung zu TLS und SSL.

virtualhost

Gibt Details zum virtuellen Host an.

In der folgenden Tabelle werden die Attribute der virtualhost-Variablen beschrieben:

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
virtualhost.aliases.values Stringarray Schreibgeschützt

Hostaliasse des virtuellen Hosts, auf den während einer bestimmten Anfrage ein Treffer trifft.

Proxyanfrage
virtualhost.name String Schreibgeschützt

Name des virtuellen Hosts, der die ursprüngliche Clientanfrage verarbeitet.

Proxyanfrage
virtualhost.ssl.enabled Boolesch Schreibgeschützt

Gibt „true“ zurück TLS/SSL in der Konfiguration des virtuellen Hosts aktiviert ist.

Proxyanfrage

Weitere Informationen zur Arbeit mit virtuellen Hosts finden Sie unter Virtuelle Hosts konfigurieren.