Referenz zu Ablaufvariablen

Diese Seite gilt für Apigee und Apigee Hybrid.

Apigee Edge-Dokumentation aufrufen

Dieser Abschnitt enthält Referenzinformationen zu den Flussvariablen.

Apigee definiert die folgenden Ablaufvariablen:

apigee                 is                       request
apiproduct             loadbalancing            response
apiproxy               message                  route
client                 messageid                servicecallout
current                mint                     system
environment            organization             target
error                  proxy                    variable
fault                  publishmessage
graphql                ratelimit

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

apiproduct

Eine Hilfsvariable, die Informationen zu API-Produkten bereitstellt.

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

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
apiproduct.operation String Schreibgeschützt

Name des Vorgangs des API-Produkts. Diese Variable ermöglicht es Ihnen, zwischen den Einstellungen der Kontingentrichtlinie und den Kontingenteinstellungen für den Vorgang eines API-Produkts zu unterscheiden.

z. B. my-operation.

Proxyanfrage
apiproduct.operation.resource String Schreibgeschützt

Der Ressourcenname des Vorgangs, der einer Anfrage zugeordnet ist.

Proxyanfrage
apiproduct.operation.methods Array Schreibgeschützt

Ein Array von HTTP-Methoden, die mit dem Vorgang übereinstimmen.

Proxyanfrage
apiproduct.operation.attributes.key_name Array Schreibgeschützt

Ruft den Wert des benutzerdefinierten Attributs ab, der dem key_name entspricht.

Proxyanfrage

Hier finden Sie weitere Informationen:

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. z. B. My Proxy. Proxyanfrage
apiproxy.revision String Schreibgeschützt Die Überarbeitungsnummer eines API-Proxys. z. B. 6. Proxyanfrage
apiproxy.basepath String Schreibgeschützt Der Basispfad der Bereitstellung, der während der API-Bereitstellung angegeben wird. Proxyanfrage

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

client

Die Anwendung oder das System, die eine Anfrage an den Load-Balancer 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, die die Nachricht an den Load-Balancer senden. 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.) 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, welchen 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 von 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 von 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

true, wenn der ProxyEndpoint für TLS/SSL konfiguriert ist. Andernfalls false.

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 Attribute in der Trace-Ansicht der Apigee UI aufrufen.

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. Error
error.content String Lesen/Schreiben Inhalt des Fehlers Error
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.

Error
error.status.code Ganzzahl Schreibgeschützt

Der mit dem Fehler verknüpfte HTTP-Statuscode. z. B. 400.

Fehler
error.reason.phrase String Schreibgeschützt

Die dem Fehler zugeordnete Begründung. Beispiel: Bad Request.

Fehler
error.transport.message TransportMessage Schreibgeschützt

Jeder Fehler vom Typ TransportMessage.

Fehler
error.state Ganzzahl Schreibgeschützt

Status im Ablauf, bei dem ein Fehler aufgetreten ist.

Error
error.header.header_name String Lesen/Schreiben

Antwortheader abrufen oder festlegen.

Fehler

fault

Liefert Informationen über die Ursache eines Laufzeitfehlers, den Grund und die Details. Apigee legt diese Variablen fest, wenn eine Richtlinie einen Fehler ausgibt und die Werte für jede Richtlinie spezifisch sind. Informationen dazu, wann die fault-Variablen festgelegt sind, finden Sie unter Richtlinienfehler.

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
fault.name String Schreibgeschützt Der Name des Fehlers, der in der Tabelle Laufzeitfehler beschrieben ist, die in jedem Richtlinienreferenz-Thema enthalten sind. Diese Variable kann in Bedingungen hilfreich sein, die auf FaultRules angewendet werden. Fehler
fault.reason String Schreibgeschützt Die Ursache des Fehlers. Wenn die OASValidation-Richtlinie beispielsweise feststellt, dass eine eingehende Anfrage nicht anhand der OpenAPI-Spezifikation validiert werden kann, wird diese Variable auf einen String gesetzt, der den Richtliniennamen, den Spezifikationsnamen und die Details beschreibt, warum die Anfrage nicht anhand der Spezifikation validiert werden kann. Andere Richtlinien legen diese Variable auf Nachrichten fest, die für ihre Fehler geeignet sind. Fehler
fault.category String Schreibgeschützt Die Kategorie. Wenn der Fehler beispielsweise in einem Richtlinienschritt auftritt, kann diese Variable den Wert „Step“ enthalten. Diese Variable kann in Bedingungen hilfreich sein, die auf FaultRules angewendet werden. Fehler
fault.subcategory String Schreibgeschützt Die Unterkategorie. Wenn beispielsweise die OASValidation-Richtlinie erkennt, dass eine Anfrage nicht anhand einer OpenAPI-Spezifikation validiert wird, wird diese Variable auf „OASValidationFailure“ gesetzt. Diese Variable kann in Bedingungen hilfreich sein, die auf FaultRules angewendet werden. Fehler

graphql

Ermöglicht den Zugriff auf die Ergebnisse einer GraphQL-Abfrage zur Laufzeit. Weitere Informationen finden Sie unter GraphQL-Richtlinie.

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

Attribut Typ Lesen/Schreiben Beschreibung
graphql Komplexer Typ NUR LESEN/LESEN UND SCHREIBEN Die GraphQL-Stammabfrage. BEREICH
graphql.fragment Komplexer Typ NUR LESEN/LESEN UND SCHREIBEN Ein Verweis auf das Standardfragment für diese Abfrage. BEREICH
graphql.fragment.count Integer Nur Lesezugriff Die Anzahl der Fragmente, die durch diese GraqhQL-Abfrage erzeugt werden. BEREICH
graphql.fragment.INDEX.selectionSet.INDEX TYP NUR LESEN/LESEN UND SCHREIBEN Ein Verweis auf den Auswahlsatz am angegebenen Index BEREICH
graphql.fragment.INDEX.selectionSet.INDEX.name String NUR LESEN/LESEN UND SCHREIBEN Der Name der Auswahl, die für den angegebenen Index festgelegt wurde. BEREICH
graphql.fragment.INDEX.selectionSet.count Integer Nur Lesezugriff Die Anzahl der Auswahlsätze in diesem Fragment. BEREICH
graphql.fragment.INDEX.selectionSet.name String NUR LESEN/LESEN UND SCHREIBEN Der Name der Standardauswahl, die im Fragment festgelegt ist. BEREICH
graphql.operation Komplexer Typ NUR LESEN/LESEN UND SCHREIBEN Ein Verweis auf den Standardvorgang der Abfrage.

Sie können keine Kontingente auf Vorgangsebene festlegen. Legen Sie sie stattdessen auf Umgebungsebene fest.

BEREICH
graphql.operation.name String Nur Lesezugriff Der Name des Standardvorgangs der Abfrage. BEREICH
graphql.operation.operationType Aufzählung Nur Lesezugriff Der Typ des Standardvorgangs, der für diesen API-Proxy ausgeführt werden kann. Mögliche Werte sind query, mutation und all. BEREICH
graphql.operation.selectionSet Komplexer Typ Der Standardauswahlsatz für den Standardvorgang der Abfrage. BEREICH
graphql.operation.selectionSet.count Integer Nur Lesezugriff Die Anzahl von Auswahlsätzen im Standardvorgang der Abfrage. BEREICH
graphql.operation.selectionSet.name String Nur Lesezugriff Name des Standardauswahlsatzes des Standardvorgangs der Abfrage. BEREICH
graphql.operation.selectionSet.INDEX Integer Nur Lesezugriff Ein Verweis auf den Auswahlsatz am angegebenen Index in der Liste der Auswahlsätze. BEREICH
graphql.operation.selectionSet.INDEX.name String Schreibgeschützt Der Name der Auswahl am angegebenen Index in der Liste der Auswahlsätze für diesen Vorgang. BEREICH
graphql.operation.selectionSet.INDEX.[selectionSet] Komplexer Typ NUR LESEN/LESEN UND SCHREIBEN Ein oder mehrere zusätzliche Auswahlsatzobjekte.

Auf Auswahlsätze kann rekursiv zugegriffen werden. Beispiel: Nach einem selectionSet.index kann auch ein weiteres selectionSet.index-Attribut anstelle eines name-Attributs vorhanden sein. Und so weiter, bis Sie den Wert von <MaxCount> erreichen, den Sie in der GraphQL-Richtlinie festgelegt haben.

BEREICH
graphql.operation.selectionSet.INDEX.directive Komplexer Typ Ein Verweis auf die Standardanweisung im angegebenen Auswahlsatz. BEREICH
graphql.operation.selectionSet.INDEX.directive.count Komplexer Typ BEREICH
graphql.operation.selectionSet.INDEX.directive.INDEX Integer Schreibgeschützt Ein Verweis auf die Anweisung am angegebenen Index. BEREICH
graphql.operation.selectionSet.INDEX.directive.INDEX.argument.INDEX Integer Schreibgeschützt Ein Verweis auf das Argument am angegebenen Index. BEREICH
graphql.operation.selectionSet.INDEX.directive.INDEX.argument.INDEX.name String Der Name des Arguments am angegebenen Index. BEREICH
graphql.operation.selectionSet.INDEX.directive.INDEX.argument.INDEX.value String Wert des Arguments am angegebenen Index. BEREICH
graphql.operation.selectionSet.INDEX.directive.name String BEREICH
graphql.operation.variableDefinitions Komplexer Typ Ein Verweis auf eine Liste von Variablendefinitionen für den Standardvorgang der Abfrage. BEREICH
graphql.operation.variableDefinitions.count Integer Die Anzahl der Variablendefinitionen für den Standardvorgang der Abfrage. BEREICH
graphql.operation.variableDefinitions.INDEX Integer Ein Verweis auf die Variablendefinition am angegebenen Index. BEREICH
graphql.operation.variableDefinitions.INDEX.name String Der Name der Variablendefinition am angegebenen Index. BEREICH
graphql.operation.variableDefinitions.INDEX.type Der Typ des Werts der Variablendefinition am angegebenen Index. BEREICH

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 Boolescher Wert 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 Boolescher Wert Schreibgeschützt

true, 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 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 der Cache-control-Header beispielsweise public, maxage=16544 lautet, ist der Rückgabewert von message.header.cache-control gleich public.

Wenn Sie den gesamten Header als String wünschen, verwenden Sie eine Variable wie message.header.header_name.values.string.

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 trennt Header-Textwerte durch Kommas. Der Index beginnt bei 1 für den Wert ganz links.

Wenn der Cache-control-Header beispielsweise public,maxage=16544 lautet, ist der Rückgabewert von message.header.cache-control.2 gleich 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.header.header_name.
 values.string
String Schreibgeschützt

Alle Werte eines bestimmten Headers in der Nachricht in Form eines einzelnen Strings.

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

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. Wenn request.querystring beispielsweise a=hello&a=world ist, ist der Rückgabewert von message.queryparam.a.1 gleich hello.

Wenn Sie beispielsweise 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 nach siteid:1
  • message.queryparam.type.2 nach language:en-us
  • message.queryparam.type.3 nach 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 gleich ['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 lautet der Wert von message.querystring beispielsweise name=nick&surname=danger.

Proxyanfrage
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 Load-Balancers. Mit dieser ID können an den Load-Balancer empfangene Anfragen nachverfolgt werden, nachdem sie an den Message Processor gesendet wurden.

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

Proxyanfrage

mint

Eine Hilfsvariable, die Informationen zur Monetarisierung bereitstellt.

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

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
mint.limitscheck.is_request_blocked Boolescher Wert Schreibgeschützt

Flag, das angibt, ob die API-Anfrage geblockt wird. Wird auf true gesetzt, wenn is_subscription_found gleich false ist.

Diese Ablaufvariable ist verfügbar, wenn die Richtlinie „MonetizationLimitsCheck“ an den API-Proxy angehängt ist. Siehe Monetarisierungbeschränkungen in API-Proxys erzwingen.

Proxyanfrage
mint.limitscheck.is_subscription_found Boolesch Schreibgeschützt

Flag, das angibt, ob der Entwickler ein aktives Abo für das API-Produkt hat. Wird auf true gesetzt, wenn ein Entwickler ein Abo hat.

Diese Ablaufvariable ist verfügbar, wenn die Richtlinie „MonetizationLimitsCheck“ an den API-Proxy angehängt ist. Siehe Monetarisierungbeschränkungen in API-Proxys erzwingen.

Proxyanfrage
mint.limitscheck.prepaid_developer_balance Numerisch Schreibgeschützt

Aktueller Kontostand im Prepaid-Konto-Wallet des Entwicklers, das mit der Währung des Tarifpakets verknüpft ist.

Proxyanfrage
mint.limitscheck.prepaid_developer_currency String Schreibgeschützt

Währung des in der Variable mint.limitscheck.prepaid_developer_balance verfügbaren Guthabens.

Proxyanfrage
mint.limitscheck.purchased_product_name String Schreibgeschützt

Name des zugehörigen API-Produkts.

Diese Ablaufvariable ist verfügbar, wenn die Richtlinie „MonetizationLimitsCheck“ an den API-Proxy angehängt ist. Siehe Monetarisierungbeschränkungen in API-Proxys erzwingen.

Proxyanfrage
mint.limitscheck.status_message String Schreibgeschützt

Weitere Informationen zur Ausführung der Richtlinie „MonetizationLimitsCheck“ für die Fehlerbehebung

Diese Ablaufvariable ist verfügbar, wenn die Richtlinie „MonetizationLimitsCheck“ an den API-Proxy angehängt ist. Siehe Monetarisierungbeschränkungen in API-Proxys erzwingen.

Proxyanfrage
mint.mintng_consumption_pricing_rates String Schreibgeschützt

Nutzungsabhängige Gebühren

Legen Sie die Gebühren beim Erstellen eines Tarifpakets fest.

PostClientFlow
mint.mintng_consumption_pricing_type String Schreibgeschützt

Nutzungsabhängiger Preistyp. Beispiel: FIXED_PER_UNIT

Legen Sie beim Erstellen eines Tarifpakets die nutzungsabhängigen Gebühren fest.

PostClientFlow
mint.mintng_currency String Schreibgeschützt

Währung für die Berechnung des Umsatzes.

Diese Ablaufvariable hat den Wert der Monetarisierungsvariable currency.

DataCapture-Richtlinie
mint.mintng_dev_share Numerisch Schreibgeschützt

Mit dem Entwickler zu teilender Umsatz.

Legen Sie den mit dem Entwickler zu teilenden Umsatz fest, wenn Sie einen Tarif erstellen.

PostClientFlow
mint.mintng_is_apiproduct_monetized Boolesch Schreibgeschützt

Flag, das angibt, ob das API-Produkt derzeit monetarisiert ist (d. h., ob ein aktiver Tarifplan in Kraft ist).

Diese Ablaufvariable wird über die Richtlinie „VerifyAPIKey“ oder „VerifyAccessToken“ hinzugefügt, die an den API-Proxy angehängt ist. Siehe Authentifizierungsrichtlinie hinzufügen.

Proxyanfrage
mint.mintng_price Numerisch Schreibgeschützt

Umsatz für die Berechnung des Entwickleranteils.

Die Ablaufvariable hat den Wert der Monetarisierungsvariable revShareGrossPrice.

DataCapture-Richtlinie und PostClientFlow
mint.mintng_price_multiplier Numerisch Schreibgeschützt

Faktor (Multiplikator), mit dem die Kosten pro Transaktion multipliziert werden.

Die Ablaufvariable hat den Wert der Monetarisierungsvariable perUnitPriceMultiplier.

DataCapture-Richtlinie und PostClientFlow
mint.mintng_rate Numerisch Schreibgeschützt

Gebühr für den API-Aufruf.

Diese Ablaufvariable zeigt die nutzungsbasierte Gebühr pro API-Aufruf an. Legen Sie beim Erstellen eines Tarifpakets die nutzungsbasierte Gebühr fest. Wenn Sie die Monetarisierungsvariable perUnitPriceMultiplier in Ihrer DataCapture-Richtlinie konfiguriert haben, berechnet Apigee die Kosten der Transaktion, nachdem der Wert der Variable perUnitPriceMultiplier berücksichtigt wurde. Weitere Informationen finden Sie unter Api price multiplier in Messwerte.

PostClientFlow
mint.mintng_rate_before_multipliers Numerisch Schreibgeschützt

Preis für den API-Aufruf ohne die perUnitPriceMultiplier-Berechnung.

Wenn die DataCapture-Richtlinie die Monetarisierungsvariable perUnitPriceMultiplier erfasst, zeigt diese Ablaufvariable die Transaktionskosten an, bevor die Kosten mit perUnitPriceMultiplier multipliziert werden.

PostClientFlow
mint.mintng_rate_plan_id String Schreibgeschützt

ID des Tarifpakets.

Diese Ablaufvariable wird über die Richtlinie „VerifyAPIKey“ oder „VerifyAccessToken“ hinzugefügt, die an den API-Proxy angehängt ist. Siehe Authentifizierungsrichtlinie hinzufügen.

Proxyanfrage
mint.mintng_revenue_share_rates String Schreibgeschützt

Umsatzbeteiligungsraten.

Legen Sie die Umsatzbeteiligungsrate beim Erstellen eines Tarifpakets fest.

PostClientFlow
mint.mintng_revenue_share_type String Schreibgeschützt

Typ der Umsatzbeteiligung. Beispiel: FIXED

Legen Sie den Typ der Umgebungsvariable beim Erstellen eines Tarifpakets fest.

PostClientFlow
mint.mintng_tx_success Boolesch Schreibgeschützt

Gibt an, ob die Transaktion monetarisiert wird.

Diese Ablaufvariable hat den Wert der Monetarisierungsvariable transactionSuccess.

DataCapture-Richtlinie
mint.prepaid_updated_developer_usage Numerisch Schreibgeschützt

Aktuelle Nutzung des Prepaid-Entwicklers.

Die Nutzung wird anhand der Tarifkonfiguration und dem Wert der Monetarisierungsvariable perUnitPriceMultiplikator berechnet.

PostClientFlow
mint.rateplan_end_time_ms Numerisch Schreibgeschützt

Ablaufzeit für den Tarifplan in Millisekunden seit der Epoche.

Diese Ablaufvariable wird über die Richtlinie „VerifyAPIKey“ oder „VerifyAccessToken“ hinzugefügt, die an den API-Proxy angehängt ist. Siehe Authentifizierungsrichtlinie hinzufügen.

Proxyanfrage
mint.rateplan_start_time_ms Numerisch Schreibgeschützt

Aktivierungszeit für den Tarifplan in Millisekunden seit der Epoche.

Diese Ablaufvariable wird über die Richtlinie „VerifyAPIKey“ oder „VerifyAccessToken“ hinzugefügt, die an den API-Proxy angehängt ist. Siehe Authentifizierungsrichtlinie hinzufügen.

Proxyanfrage
mint.status String Schreibgeschützt

Der Status des monetarisierten Aufrufs. Wird nur bei einem Fehler gefüllt.

PostClientFlow
mint.status_code Numerisch Schreibgeschützt

HTTP-Statuscode des Monetarisierungsaufrufs. Wird nur bei einem Fehler gefüllt.

PostClientFlow
mint.subscription_end_time_ms Numerisch Schreibgeschützt

Ablaufzeit für das API-Produktabo in Millisekunden seit der Epoche.

Diese Ablaufvariable ist verfügbar, wenn die Richtlinie „MonetizationLimitsCheck“ an den API-Proxy angehängt ist. Siehe Monetarisierungbeschränkungen in API-Proxys erzwingen.

Proxyanfrage
mint.subscription_start_time_ms Numerisch Schreibgeschützt

Aktivierungszeit für das API-Produktabo in Millisekunden seit der Epoche.

Diese Ablaufvariable ist verfügbar, wenn die Richtlinie „MonetizationLimitsCheck“ an den API-Proxy angehängt ist. Siehe Monetarisierungbeschränkungen in API-Proxys erzwingen.

Proxyanfrage
mint.tx_success_result Boolesch Schreibgeschützt

Gibt an, ob die Monetarisierung für die Transaktion erfolgreich ist.

Die Variable mint.tx_success_result kann die folgenden Werte haben:

  • tx_success ist auf "true" gesetzt: Die Variable transactionSuccess ist true und die Transaktion wird monetarisiert. Da die Transaktion monetarisiert wird, werden die Werte der Variablen mint.mintng_rate und mint.mintng_dev_share berechnet.
  • tx_success ist auf "false" gesetzt: Die Variable transactionSuccess ist false und die Transaktion wird nicht monetarisiert. Da die Transaktion nicht monetarisiert wird, werden die Werte der Variablen mint.mintng_rate und mint.mintng_dev_share nicht berechnet.
  • tx_success nicht gefunden. Nachrichtenstatuscode war nicht 2xx: Die Variable transactionSuccess wird nicht erfasst und der HTTP-Statuscode (message.status.code) der Transaktion ist nicht 2xx. Die Transaktion wird nicht monetarisiert.
  • tx_success nicht gefunden. Nachrichtenstatuscode war 2xx: Die Variable transactionSuccess wird nicht erfasst und der HTTP-Statuscode (message.status.code) der Transaktion ist 2xx. Die Transaktion wird monetarisiert.
PostClientFlow

Hier finden Sie weitere Informationen:

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-Endpunkt-Konfiguration. Der Basispfad ist das URI-Fragment ganz links, das auf den Host in der URL folgt. Bedingte Ablauf-URIs folgen dem Basispfad.

Angenommen, Sie haben einen API-Proxy-Endpunkt mit dem Basispfad /v2/weatherapi konfiguriert. Weitere Informationen finden Sie unter Proxy-Endpunkt-Konfiguration. Wenn die eingehende Anfrage in diesem Fall die URL https://myhost.example.net/v2/weatherapi/forecastrss?w=12797282 verwendet, dann gehen Sie so vor:

  • Der Hostname lautet myhost.example.net. Um dies abzurufen, lesen Sie die Variable request.header.host aus.
  • Der Basispfad ist /v2/weatherapi. Um dies abzurufen, lesen Sie die Variable proxy.basepath aus.
  • Das Pfadsuffix lautet /forecastrss. Um dies abzurufen, lesen Sie die Variable proxy.pathsuffix aus.

Wenn Sie einen dynamischen Basispfad in Ihrer API-Proxy-Konfiguration definieren, beispielsweise /v2/*/weatherapicode>, ist die proxy.basepath-Variable auf den dynamischen Pfad festgelegt. Um die tatsächliche URL für die Anfrage abzurufen, lesen und parsen Sie die Variable proxy.url.

Proxyanfrage
proxy.client.ip String Schreibgeschützt

Die X-Forwarded-For-Adresse des eingehenden Aufrufs. Dies ist die IP-Adresse, die Apigee 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 Pfadsuffixes in der URL, der vom Client gesendet und am ProxyEndpoint empfangen wird.

Der Basispfad ist die Pfadkomponente ganz links, die einen API-Proxy innerhalb einer Umgebungsgruppe klar identifiziert. Angenommen, Sie haben einen API-Proxy-Endpunkt mit dem Basispfad /v2/weatherapi konfiguriert. In diesem Fall enthält in einer an https://myhost.example.net/v2/weatherapi/forecastrss?w=12797282 gesendeten Anfrage die Variable proxy.pathsuffix den String /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.

Proxyanfrage

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

publishmessage

Wird ausgefüllt, wenn eine PublishMessage-Richtlinie ausgeführt wird.

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
publishmessage.message.id String Schreibgeschützt: Gibt die messageId (ID der veröffentlichten Nachricht) vom Pub/Sub-Server zurück.

Apigee legt diese Ablaufvariable nur fest, wenn die Veröffentlichungsanfrage erfolgreich ist.

Proxyanfrage

ratelimit

Wird ausgefüllt, wenn eine Kontingent- oder SpikeArrest-Richtlinie ausgeführt wird.

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

Attribut Typ Lesen/Schreiben Beschreibung Bereich beginnt
ratelimit.policy_name.allowed.count Long Schreibgeschützt: Gibt die zulässige Kontingentzahl zurück. PostClientFlow
ratelimit.policy_name.used.count Long Schreibgeschützt: Gibt das aktuell in einem Kontingentintervall verwendete Kontingent zurück. PostClientFlow
ratelimit.policy_name.available.count Long Schreibgeschützt: Gibt die verfügbare Kontingentzahl im Kontingentintervall zurück. PostClientFlow
ratelimit.policy_name.exceed.count Long Schreibgeschützt: Gibt 1 zurück, wenn das Kontingent überschritten wurde. PostClientFlow
ratelimit.policy_name.total.exceed.count Long Schreibgeschützt: Gibt 1 zurück, wenn das Kontingent überschritten wurde. PostClientFlow
ratelimit.policy_name.expiry.time Long Schreibgeschützt:

Gibt die UTC-Zeit in Millisekunden zurück. Damit wird festgelegt, wann das Kontingent abläuft und ein neues Kontingentintervall beginnt.

Wenn der Typ der Kontingentrichtlinie rollingwindow lautet, ist dieser Wert nicht gültig, da das Kontingentintervall niemals abläuft.

PostClientFlow
ratelimit.policy_name.identifier String Schreibgeschützt: Gibt den mit der Richtlinie verknüpften (Client-)ID-Verweis zurück PostClientFlow
ratelimit.policy_name.class String Schreibgeschützt: Gibt die der Client-ID zugeordnete Klasse zurück PostClientFlow
ratelimit.policy_name.class.allowed.count Long Schreibgeschützt: Gibt die in der Klasse definierte zulässige Kontingentzahl zurück PostClientFlow
ratelimit.policy_name.class.used.count Long Schreibgeschützt: Gibt das verwendete Kontingent innerhalb einer Klasse zurück. PostClientFlow
ratelimit.policy_name.class.available.count Long Schreibgeschützt: Gibt die verfügbare Kontingentzahl in der Klasse zurück PostClientFlow
ratelimit.policy_name.class.exceed.count Long Schreibgeschützt: Gibt die Anzahl der Anfragen zurück, die das Limit in der Klasse im aktuellen Kontingentintervall überschreiten. PostClientFlow
ratelimit.policy_name.class.total.exceed.count Long Schreibgeschützt: Gibt die Gesamtzahl der Anfragen zurück, die das Limit in der Klasse aller Kontingentintervalle überschreiten. Es ist also die Summe von class.exceed.count für alle Kontingentintervalle. PostClientFlow
ratelimit.policy_name.failed Boolesch Schreibgeschützt:

Gibt an, ob die Richtlinie fehlgeschlagen ist ("true" oder "false").

PostClientFlow

Hier finden Sie weitere Informationen:

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.

Wenn die Nutzlast beispielsweise a=hello&x=greeting&a=world lautet, ist der Wert von request.formparam.a.values gleich ['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 Formularstring beispielsweise a=hello&a=world lautet, ist der Rückgabewert von request.formparam.a.1 gleich hello.

Proxyanfrage
request.formparams.count Ganzzahl Schreibgeschützt

Anzahl aller Parameter, die der Anfrage zugeordnet sind, die von der Clientanwendung gesendet wurde.

Proxyanfrage
request.formparams.names Sammlung Schreibgeschützt

Eine Liste aller Parameternamen, die der Anfrage zugeordnet sind.

Proxyanfrage
request.formstring String Schreibgeschützt

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

z. B. name=test&type=first&group=A.

Proxyanfrage
request.grpc.rpc.name String Schreibgeschützt

Nur anwendbar bei Verwendung eines gRPC-Zielservers. Der RPC-Name. Informationen zu gRPC-Proxys finden Sie unter gRPC API-Proxys erstellen.

Proxyanfrage
request.grpc.service.name String Schreibgeschützt

Nur anwendbar bei Verwendung eines gRPC-Zielservers. Der Name des gRPC-Statusdienstes. Informationen zu gRPC-Proxys finden Sie unter gRPC API-Proxys erstellen.

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 der Cache-control-Header beispielsweise public, maxage=16544 lautet, ist der Rückgabewert von request.header.cache-control gleich public.

Wenn Sie den gesamten Header als String wünschen, verwenden Sie eine Variable wie request.header.header_name.values.string.

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

Der Wert des Nten spezifischen Headerwerts in der Anfrage. Apigee trennt Header-Textwerte durch Kommas. Der Index beginnt bei 1 für den Wert ganz links.

Wenn der Cache-control-Header beispielsweise public, maxage=16544 lautet, ist der Rückgabewert von request.header.cache-control.2 gleich 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.header.header_name.
 values.string
String Schreibgeschützt

Alle Werte eines bestimmten Headers in der Anfrage in Form eines einzelnen Strings.

Beispiel: Wenn der Cache-control-Header public, maxage=16544 lautet, ist der Rückgabewert von request.header.cache-control.values.string gleich public, maxage=16544.

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.

Wenn der URI zum Back-End-Dienst beispielsweise https://example.com/rest/api/latest ist, ist der Wert von request.path gleich /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.

Wenn request.querystring beispielsweise a=hello&a=world ist, ist der Rückgabewert von request.queryparam.a.1 gleich hello.

Wenn Sie beispielsweise 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 nach siteid:1
  • request.queryparam.type.2 nach language:en-us
  • request.queryparam.type.3 nach 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 ist, ist der Wert von request.queryparam.a.values gleich ['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 ist, gibt diese Variable name=first&surname=second&place=address zurück.

Proxyanfrage
request.transportid String Schreibgeschützt

ID der Anfrage als Typ „TransportMessage“, der kontextabhängig ist.

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

Anfrage des Typs „TransportMessage“. Dieser Wert ist kontextabhängig.

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 Beispielproxy 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. Zum Beispiel: GET, PUT und DELETE.

Proxyanfrage
request.version String Schreibgeschützt

Die HTTP-Version der Anfrage. z. B. 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.header.header_name String Lesen/Schreiben

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

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

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

Wenn Sie den gesamten Header als String wünschen, verwenden Sie eine Variable wie response.header.header_name.values.string.

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.
 values.string
String Schreibgeschützt

Alle Werte eines bestimmten Headers in der Antwort in Form eines einzelnen Strings.

Beispiel: Wenn der Cache-control-Header public,maxage=16544 lautet, ist der Rückgabewert von response.header.cache-control.values.string gleich public,maxage=16544.

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

Der Wert des Nten spezifischen Headerwerts in der Antwort. Apigee trennt Header-Textwerte durch Kommas. Der Index beginnt bei 1 für den Wert ganz links.

Wenn der Cache-control-Header beispielsweise public,maxage=16544 lautet, gibt response.header.cache-control.2 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. z. B. default.

Zielanfrage

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 gemeinsame Name des TargetEndpoint wie in einer ServiceCallout-Richtlinie angegeben. Dies ist nur sinnvoll, wenn der TargetEndpoint auf einen TLS/SSL-Endpunkt verweist.

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 der Rechenzentrumsregion, 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 GMT.

Dieser Wert ist die Stringdarstellung des entsprechenden Werts von system.timestamp. Beispiel: "Mittwoch, 21. August 2013 19:16:47 GMT" entspricht dem Zeitstempelwert von 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>

Der target.basepath in diesem Beispiel lautet /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 Boolescher Wert Lesen/Schreiben

Bei true behält die Anfrage, die von ProxyEndpoint an TargetEndpoint weitergeleitet wird, das Pfadsuffix bei. Das URI-Pfadfragment folgt dem URI, der im ProxyEndpoint-Basispfad definiert ist.

Zielanfrage
target.copy.queryparams Boolescher Wert Lesen/Schreiben

Bei true behält die Anfrage, die von ProxyEndpoint an TargetEndpoint weitergeleitet wird, die 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 auf einen TLS/SSL-Endpunkt verweist.

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 auf einen TLS/SSL-Endpunkt verweist.

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 von 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. z. B. 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 von 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. z. B. 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 von 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 von 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. z. B. 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 Boolescher Wert 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 zum Arbeiten mit TLS finden Sie unter Optionen zum Konfigurieren von TLS.