Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Übersicht
Mit der SetIntegrationRequest-Richtlinie können Sie ein Anfrageobjekt für eine Integration erstellen, die Sie ausführen möchten. In der Richtlinie müssen Sie die Details des API-Triggers und die für die Ausführung der Integration erforderlichen Eingabeparameter konfigurieren. Wenn Sie die SetIntegrationRequest-Richtlinie ausführen, wird ein Anfrageobjekt erstellt und in einer Ablaufvariable gespeichert. Das Anfrageobjekt enthält alle Informationen, die zum Ausführen der Integration erforderlich sind. Die Integration wird zu diesem Zeitpunkt noch nicht ausgeführt. Zum Ausführen der Integration müssen Sie entweder die IntegrationCallout-Richtlinie aufrufen oder einen IntegrationEndpoint festlegen. Sowohl die IntegrationCallout-Richtlinie als auch der IntegrationEndpoint erfordern das Anfrageobjekt, um die Integration auszuführen.
Diese Richtlinie ist eine erweiterbare Richtlinie, deren Verwendung je nach Apigee-Lizenz Auswirkungen auf die Kosten oder die Nutzung haben kann. Informationen zu Richtlinientypen und Auswirkungen auf die Nutzung finden Sie unter Richtlinientypen.
<SetIntegrationRequest>
Gibt die SetIntegrationRequest-Richtlinie an.
Standardwert | – |
Erforderlich? | Erforderlich |
Typ | Komplexer Typ |
Übergeordnetes Element | – |
Untergeordnete Elemente |
<ApiTrigger> <DisplayName> <IntegrationName> <IntegrationRegion> <Parameters> <ProjectId> <Request> <ScheduleTime> |
Die folgende Tabelle enthält eine allgemeine Beschreibung der untergeordneten Elemente des Elements <SetIntegrationRequest>
:
Untergeordnetes Element | Erforderlich? | Beschreibung |
---|---|---|
<ApiTrigger> |
Erforderlich | Name des API-Triggers, der in der Integration aufgerufen werden soll. |
<DisplayName> |
Optional | Ein benutzerdefinierter Name für die Richtlinie. |
<IntegrationName> |
Optional | Name der auszuführenden Integration. |
<IntegrationRegion> |
Erforderlich | Name der Region, in der sich die Integration befindet. |
<Parameters> |
Optional | Eingabeparameter der Integration. |
<ProjectId> |
Optional | Name des Google Cloud-Projekts mit der Integration, die Sie ausführen möchten. |
<Request> |
Optional | Name der Ablaufvariablen zum Speichern des Anfrageobjekts. |
<ScheduleTime> |
Optional | Der Zeitpunkt, zu dem die Integration ausgeführt werden muss. |
Die SetIntegrationRequest-Richtlinie verwendet die folgende Syntax:
Syntax
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <SetIntegrationRequest continueOnError="[true|false]" enabled="[true|false]" name="Set-Integration-Request"> <DisplayName>POLICY_DISPLAY_NAME</DisplayName> <ProjectId ref="FLOW_VARIABLE_NAME">GOOGLE_CLOUD_PROJECT_ID</ProjectId> <IntegrationName ref="FLOW_VARIABLE_NAME">INTEGRATION_NAME</IntegrationName> <IntegrationRegion ref="FLOW_VARIABLE_NAME">INTEGRATION_REGION</IntegrationRegion> <ApiTrigger ref="FLOW_VARIABLE_NAME">API_TRIGGER_NAME</ApiTrigger> <ScheduleTime>PARAMETER_VALUE</ScheduleTime> <Parameters> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE" ref="FLOW_VARIABLE_NAME">PARAMETER_VALUE</Parameter> <ParameterArray name="ARRAY_NAME" type="ARRAY_DATATYPE" ref="FLOW_VARIABLE_NAME> <Value ref="FLOW_VARIABLE_NAME>PARAMETER_VALUE</Value> <Value ref="FLOW_VARIABLE_NAME>PARAMETER_VALUE</Value> <Value ref="FLOW_VARIABLE_NAME>PARAMETER_VALUE</Value> </ParameterArray> </Parameters> <Request>FLOW_VARIABLE_NAME</Request> </SetIntegrationRequest>
Beispiel
Das folgende Beispiel zeigt die SetIntegrationRequest-Richtliniendefinition:
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <SetIntegrationRequest continueOnError="false" enabled="true" name="Set-Integration-Request"> <DisplayName>Set Integration Request Policy</DisplayName> <ProjectId ref="my_projectid_var">apigee_staging_1</ProjectId> <IntegrationName ref="my_integration_ref">integration_1</IntegrationName> <IntegrationRegion ref="my_integration_ref">asia-east1</IntegrationRegion> <ApiTrigger ref="my_api_trigger_ref">API-Trigger-2</ApiTrigger> <ScheduleTime>2022-01-15T01:30:15Z</ScheduleTime> <Parameters> <Parameter name="my_str_param" type="string" ref="flow_var_1">someText</Parameter> <ParameterArray name="my_array_param" type="integer" ref="flow_var_2"> <Value ref="flow_var_3">1</Value> <Value ref="flow_var_4">2</Value> <Value ref="flow_var_5">3</Value> </ParameterArray> </Parameters> <Request>my_request_var</Request> </SetIntegrationRequest>
Dieses Element hat folgende Attribute, die allen Richtlinien gemeinsam sind:
Attribut | Standard | Erforderlich? | Beschreibung |
---|---|---|---|
name |
- | Erforderlich |
Der interne Name der Richtlinie. Der Wert des Attributs Optional können Sie das Element |
continueOnError |
false | Optional | Legen Sie false fest, um einen Fehler zurückzugeben, wenn eine Richtlinie fehlschlägt. Dies ist für die meisten Richtlinien das erwartete Verhalten. Legen Sie true fest, damit die Ablaufausführung auch nach dem Fehlschlagen einer Richtlinie fortgesetzt wird. Weitere Informationen:
|
enabled |
wahr | Optional | Setzen Sie den Wert auf true , um die Richtlinie zu erzwingen. Legen Sie false fest, um die Richtlinie zu deaktivieren. Die Richtlinie wird nicht durchgesetzt, selbst wenn sie mit einem Ablauf verknüpft ist. |
async |
false | Verworfen | Dieses Attribut wurde verworfen. |
Verweis auf untergeordnetes Element
In diesem Abschnitt werden die untergeordneten Elemente von<SetIntegrationRequest>
beschrieben.
<DisplayName>
Wird zusätzlich zum Attribut name
verwendet, um die Richtlinie im Proxy-Editor der Verwaltungs-UI mit einem anderen, natürlicher klingenden Namen zu versehen.
Das Element <DisplayName>
ist für alle Richtlinien gleich.
Standardwert | – |
Erforderlich? | Optional. Wenn Sie <DisplayName> weglassen, wird der Wert des Attributs name der Richtlinie verwendet. |
Typ | String |
Übergeordnetes Element | <PolicyElement> |
Untergeordnete Elemente | Keine |
Das <DisplayName>
-Element verwendet die folgende Syntax:
Syntax
<PolicyElement> <DisplayName>POLICY_DISPLAY_NAME</DisplayName> ... </PolicyElement>
Beispiel
<PolicyElement> <DisplayName>My Validation Policy</DisplayName> </PolicyElement>
Das <DisplayName>
-Element hat keine Attribute oder untergeordneten Elemente.
<ProjectId>
Gibt den Namen des Google Cloud-Projekts an.
Apigee weist den von Ihnen für dieses Element angegebenen Wert der Ablaufvariable integration.project.id
zu.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente | Keine |
Das <ProjectId>
-Element verwendet die folgende Syntax:
Syntax
<ProjectId ref="FLOW_VARIABLE_NAME">GOOGLE_CLOUD_PROJECT_ID</ProjectId>
Beispiel
Im folgenden Beispiel wird die Richtlinie so konfiguriert, dass die Ablaufvariable my_projectid_var
zum Abrufen der Projekt-ID verwendet wird. Wenn die Ablaufvariable zur Laufzeit nicht aufgelöst wird, verwenden Sie apigee_staging_1
als Projekt-ID:
<ProjectId ref="my_projectid_var">apigee_staging_1</ProjectId>
In der folgenden Tabelle werden die Attribute von <ProjectId>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee die Google Cloud-Projekt-ID lesen soll. Sie können das Element <ProjectId> auf eine der folgenden Arten festlegen:
|
<IntegrationName>
Gibt die auszuführende Integration an.
Apigee weist den von Ihnen für dieses Element angegebenen Wert der Ablaufvariable integration.name
zu.
Der Integrationsname muss folgende Benennungsanforderungen erfüllen:
- Muss mit Buchstaben oder Ziffern beginnen und enden.
- Darf keine Leerzeichen enthalten.
- Darf nicht zwei aufeinanderfolgende Binde- oder Unterstriche enthalten.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente | Keine |
Das <IntegrationName>
-Element verwendet die folgende Syntax:
Syntax
<IntegrationName ref="FLOW_VARIABLE_NAME">INTEGRATION_NAME</IntegrationName>
Beispiel
Im folgenden Beispiel wird die Richtlinie so konfiguriert, dass sie die Ablaufvariable my_integration_ref
zum Abrufen des Integrationsnamens verwendet. Wenn die Ablaufvariable zur Laufzeit nicht aufgelöst wird, verwenden Sie integration_1
als Integrationsnamen:
<IntegrationName ref="my_integration_ref">integration_1</IntegrationName>
In der folgenden Tabelle werden die Attribute von <IntegrationName>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee den Integrationsnamen lesen soll. Sie können das Element <IntegrationName> auf eine der folgenden Arten festlegen:
|
<IntegrationRegion>
Gibt die Region an, in der die Integration vorhanden ist.
Zur Laufzeit weist Apigee den Wert des Elements der Ablaufvariable integration.region
zu, erstellt eine regionsbasierte Ziel-URL und speichert die URL in der Ablaufvariable integration.target.url
.
Die regionsbasierte Ziel-URL hat folgendes Format: https://integration.region-integrations.googleapis.com
Die Integrationsregion muss von Application Integration unterstützt werden. Informationen zu den unterstützten Regionen von Appliation Integration finden Sie unter Unterstützte Regionen.
Standardwert | – |
Erforderlich? | Erforderlich |
Typ | String |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente | Keine |
Das <IntegrationRegion>
-Element verwendet die folgende Syntax:
Syntax
<IntegrationRegion ref="FLOW_VARIABLE_NAME">INTEGRATION_REGION</IntegrationRegion>
Beispiel
Im folgenden Beispiel wird die Richtlinie so konfiguriert, dass sie die Ablaufvariable my_integration_region_ref
zum Abrufen der Integrationsregion verwendet. Wenn die Ablaufvariable zur Laufzeit nicht aufgelöst wird, wird asia-east1
als Region der Integration verwendet:
<IntegrationRegion ref="my_integration_region_ref">asia-east1</IntegrationRegion>
In der folgenden Tabelle werden die Attribute von <IntegrationRegion>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee die Integrationsregion lesen soll. Sie können das Element <IntegrationRegion> auf eine der folgenden Arten festlegen:
|
<ApiTrigger>
Gibt den auszuführenden API-Trigger an.
Sie müssen den Namen des API-Triggers im Format api_trigger/API_TRIGGER_NAME
angeben.
Apigee weist den von Ihnen für dieses Element angegebenen Wert der Ablaufvariable integration.api.trigger
zu.
Wenn Sie den <IntegrationName>
angegeben haben, wird nur der API-Trigger dieser Integration ausgeführt. Wenn Sie jedoch <IntegrationName>
nicht angegeben haben, werden alle Integrationen mit dem angegebenen API-Trigger ausgeführt.
Standardwert | – |
Erforderlich? | Erforderlich |
Typ | String |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente | Keine |
Das <ApiTrigger>
-Element verwendet die folgende Syntax:
Syntax
<ApiTrigger ref="FLOW_VARIABLE_NAME">API_TRIGGER_NAME</ApiTrigger>
Beispiel
Im folgenden Beispiel wird die Richtlinie so konfiguriert, dass die Ablaufvariable my_api_trigger_ref
zum Abrufen des API-Triggenamens verwendet wird. Wenn die Ablaufvariable zur Laufzeit nicht aufgelöst wird, verwenden Sie api_trigger/API-Trigger-2
als API-Triggername:
<ApiTrigger ref="my_api_trigger_ref">api_trigger/API-Trigger-2</ApiTrigger>
In der folgenden Tabelle werden die Attribute von <ApiTrigger>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee den API-Triggernamen lesen soll. Sie können das Element <ApiTrigger> auf eine der folgenden Arten festlegen:
|
<ScheduleTime>
Gibt den Zeitpunkt an, zu dem die Integration ausgeführt werden muss.
Wenn die Zeit kleiner oder gleich der aktuellen Zeit ist, wird die Integration sofort ausgeführt. Sie müssen die Zeit im Format yyyy-mm-ddThh:mm:ssZ
angeben, wobei Z die UTC-Zeitzone ist.
Wenn Sie beispielsweise 2022-01-15T01:30:15Z
angeben, wird die Integration am 15.1.2022 um 1:30:15 Uhr UTC ausgeführt. Sie können die Zeitzone auch mit einem Zeitversatz zu UTC angeben.
Wenn Sie beispielsweise 2022-01-15T01:30:15-08:00
angeben, wird die Integration am 15.1.2022 um 1:30:15 Uhr PST ausgeführt. Weitere Informationen zum Zeitformat finden Sie unter Kombinierte Datums- und Uhrzeitdarstellungen.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente | Keine |
Das <ScheduleTime>
-Element verwendet die folgende Syntax:
Syntax
<ScheduleTime>PARAMETER_VALUE</ScheduleTime>
Beispiel
Im folgenden Beispiel wird die Ausführung der Integration für 2022-01-15T01:30:15Z
geplant:
<ScheduleTime>2022-01-15T01:30:15Z</ScheduleTime>
<Parameters>
Gibt die Eingabeparameter an, die zum Ausführen der Integration erforderlich sind.
Sie können einzelne Parameter oder Parameterarrays angeben.
- Wenn Sie einen einzelnen Parameter angeben möchten, verwenden Sie das Element
<Parameter>
. - Verwenden Sie das Element
<ParameterArray>
, um ein Parameter-Array anzugeben.
Standardwert | – |
Erforderlich? | Optional |
Typ | Komplexer Typ |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente |
<Parameter> <ParameterArray> |
In der folgenden Tabelle werden die Attribute von <Parameters>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
substitutionVariableChar |
Optional | Char | Ermöglicht die Festlegung benutzerdefinierter Trennzeichen zur Übergabe von Ablaufvariablenwerten als Vorlagenargumente im untergeordneten Element <Parameter> .
|
Das <Parameters>
-Element verwendet die folgende Syntax:
Syntax
<Parameters substitutionVariableChar="SUBSTITUTION_CHAR"> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE" ref="FLOW_VARIABLE_NAME" >PARAMETER_VALUE</Parameter> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE">SUBSTITUTION_CHAR FLOW_VARIABLE_NAME SUBSTITUTION_CHAR</Parameter> <ParameterArray name="ARRAY_NAME" type="ARRAY_DATATYPE ref="FLOW_VARIABLE_NAME""> <Value>PARAMETER_VALUE</Value> <Value ref="FLOW_VARIABLE_NAME"/> <Value ref="FLOW_VARIABLE_NAME">PARAMETER_VALUE</Value> </ParameterArray> </Parameters>
Beispiel
Im folgenden Beispiel werden der Parameter my_str_param
und das Parameter-Array my_array_param
initialisiert:
<Parameters substitutionVariableChar="#"> <Parameter name="my_str_param" type="string" ref="flow_var_1">someText</Parameter> <Parameter name="strVar" type="string">#flowvar1#</Parameter> <ParameterArray name="my_array_param" type="integer" ref="flow_var_2"> <Value>1</Value> <Value ref="flow_var_3"/> <Value ref="flow_var_4">3</Value> </ParameterArray> </Parameters>
Apigee behandelt leere <Parameter>
- und <ParameterArray>
-Elemente als null
-Werte. Beispielsweise werden Deklarationen wie <Parameter></Parameter>
und <ParameterArray></ParameterArray>
als null
-Werte behandelt.
<Parameter>
Gibt einen Eingabeparameter an.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<Parameters> |
Untergeordnete Elemente | Keine |
Sie können den Parameterwert auf folgende Weise angeben:
- <Parameter name="my_param" type="string">val</Parameter>: Verwenden Sie val als Parameterwert. Wenn val ungültig ist, meldet Apigee eine Ausnahme.
- <Parameter name="my_param" type="string" ref="refval"/>: Lösen Sie die Ablaufvariable refval zur Laufzeit auf und verwenden Sie ihren Wert. Apigee meldet eine Ausnahme, wenn der aufgelöste refval-Wert ungültig ist oder refval nicht aufgelöst wurde.
- <Parameter name="my_param" type="string" ref="refval">val</Parameter>: Die Ablaufvariable refval zur Laufzeit auflösen und dessen Wert verwenden. Apigee meldet eine Ausnahme, wenn der aufgelöste refval-Wert ungültig ist. Wenn refval nicht aufgelöst wird, verwendet Apigee val als Parameterwert.
- <Parameter name="my_param" type="json">{"name":"$#flowval#$"}</Parameter>: Verwenden Sie
$#FLOW_VARIABLE_NAME#$
, um Werte der Ablaufvariablen als Vorlagenargument im Parameter zu übergeben. Apigee löst die Ablaufvariable flowval zur Laufzeit auf und verwendet ihren Wert. Eine Ausnahme wird gemeldet, wenn der aufgelöste flowval-Wert ungültig ist. - <Parameter name="my_param" type="json">{"Name":""SUBSTITUTION_CHAR FlowvalSUBSTITUTION_CHAR "}</Parameter>: Wo SUBSTITUTION_CHAR den Wert für das
substitutionVariableChar
-Attribut von dem übergeordneten<Parameters>
-Element angibt. Apigee löst die Ablaufvariable flowval zur Laufzeit auf und verwendet ihren Wert. Eine Ausnahme wird gemeldet, wenn der aufgelöste flowval-Wert ungültig ist.
Das <Parameter>
-Element verwendet die folgende Syntax:
Syntax
<Parameters substitutionVariableChar="SUBSTITUTION_CHAR"> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE">PARAMETER_VALUE</Parameter> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE" ref="FLOW_VARIABLE_NAME"/> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE" ref="FLOW_VARIABLE_NAME">PARAMETER_VALUE</Parameter> <Parameter name="PARAMETER_NAME" type="json">$#FLOW_VARIABLE_NAME#$</Parameter> <Parameter name="PARAMETER_NAME" type="PARAMETER_DATATYPE">SUBSTITUTION_CHAR FLOW_VARIABLE_NAME SUBSTITUTION_CHAR</Parameter> </Parameters>
Beispiel 1
Im folgenden Beispiel wird Parameter my_str_param
als String deklariert und der Wert auf someText
gesetzt.
<Parameters> <Parameter name="my_str_param" type="string">someText</Parameter> </Parameters>
Beispiel 2
Im folgenden Beispiel wird der Parameter my_double_param
als Double deklariert und dem Parameter der Wert der Ablaufvariable flow_var
zugewiesen.
<Parameters> <Parameter name="my_double_param" type="double" ref="flow_var"/> </Parameters>
Beispiel 3
Im folgenden Beispiel wird der Wert auf den Ganzzahlparameter my_int_param_1
gesetzt.
<Parameters> <Parameter name="my_int_param_1" type="integer" ref="flow_var_1">96</Parameter> </Parameters>
Wenn in diesem Beispiel die Ablaufvariable flow_var_1
erfolgreich aufgelöst wird, wird my_int_param_1
auf den Wert der Ablaufvariable gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst werden kann, wird my_int_param_1
auf 96
festgelegt.
Beispiel 4
Im folgenden Beispiel werden Werte für die JSON-Parameter my_json_param_1
und my_json_param_2
festgelegt.
<Parameters> <Parameter name="my_json_param_1" type="json" ref="flow_var_1">{name:"Apple", color:"Red"}</Parameter> <Parameter name="my_json_param_2" type="json">{name:"Banana", color:"Yellow"}</Parameter> </Parameters>
Wenn in diesem Beispiel die Ablaufvariable flow_var_1
erfolgreich aufgelöst wird, wird my_json_param_1
auf den Wert der Ablaufvariable flow_var_1
gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, ist my_json_param_1
auf {name:"Apple", color:"Red"}
festgelegt. Der Parameter my_json_param_2
ist auf {name:"Banana", color:"Yellow"}
gesetzt, da kein ref
-Attribut angegeben ist.
Beispiel 5
Im folgenden Beispiel wird der Wert für den JSON-Parameter template_json_param
mithilfe des Ablaufvariablenwerts festgelegt, der in einer Standardvorlage übergeben wird.
<Parameters> <Parameter name="template_json_param" type="json">{"name":"$#flow_var_1#$"}</Parameter> </Parameters>
Wenn in diesem Beispiel die Ablaufvariable flow_var_1
erfolgreich aufgelöst wird, wird template_json_param
auf den Wert der Ablaufvariable flow_var_1
gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, löst Apigee eine Ausnahme aus.
Beispiel 6
Im folgenden Beispiel wird der Wert für den JSON-Parameter template_json_param
mit dem Attribut substitutionVariableChar festgelegt.
<Parameters substitutionVariableChar="#"> <Parameter name="template_json_param" type="json">{"name":"#flow_var_1#"}</Parameter> </Parameters>
Wenn in diesem Beispiel die Ablaufvariable flow_var_1
erfolgreich aufgelöst wird, wird template_json_param
auf den Wert der Ablaufvariable flow_var_1
gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, löst Apigee eine Ausnahme aus.
In der folgenden Tabelle werden die Attribute von <Parameter>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
name |
Erforderlich | String | Name des Parameters. |
type |
Erforderlich | String | Datentyp des Parameters. Unterstützte Typen sind integer , string , boolean , double und json . |
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee den Parameterwert lesen soll. Apigee verwendet die folgenden Kriterien, um den Parameterwert festzulegen:
|
<ParameterArray>
Gibt ein Array mit Eingabeparametern an.
Standardwert | – |
Erforderlich? | Optional |
Typ | Komplexer Typ |
Übergeordnetes Element |
<Parameters> |
Untergeordnete Elemente |
<Value> |
Das Element <Parameters>
kann mehrere <ParameterArray>
-Elemente enthalten. Für ein Parameterarray können Sie den Wert der Arrayelemente festlegen, indem Sie entweder den tatsächlichen Wert angeben oder eine Ablaufvariable im Attribut ref
angeben.
Wenn Sie eine Ablaufvariable angeben, werden die Array-Elemente auf den Wert der Ablaufvariablen festgelegt.
In den Beispielen in diesem Abschnitt werden die verschiedenen Möglichkeiten zur Konfiguration des Elements <ParameterArray>
beschrieben.
Das <ParameterArray>
-Element verwendet die folgende Syntax:
Syntax
<Parameters> <ParameterArray name="ARRAY_NAME" type="ARRAY_DATATYPE" ref="FLOW_VARIABLE_NAME"> <Value ref="FLOW_VARIABLE_NAME"/> <Value ref="FLOW_VARIABLE_NAME">PARAMETER_VALUE</Value> <Value>PARAMETER_VALUE</Value> </ParameterArray> <ParameterArray name="ARRAY_NAME" type="ARRAY_DATATYPE" ref="FLOW_VARIABLE_NAME"/> <ParameterArray name="ARRAY_NAME" type="ARRAY_DATATYPE"> <Value ref="FLOW_VARIABLE_NAME"/> <Value ref="FLOW_VARIABLE_NAME">PARAMETER_VALUE</Value> <Value>PARAMETER_VALUE</Value> </ParameterArray> <Parameters/>
Example-1
Im folgenden Beispiel wird my_array_param
als Ganzzahlarray deklariert und der Wert der Arrayelemente auf 1
, 2
und 3
festgelegt:
<Parameters> <ParameterArray name="my_array_param" type="integer"> <Value>1</Value> <Value>2</Value> <Value>3</Value> </ParameterArray> <Parameters/>
Example-2
Im folgenden Beispiel wird my_array_param
als doppeltes Array deklariert. Dabei gilt:
- Das erste Element wird auf den Wert der Ablaufvariablen
flow_var_1
gesetzt. - Das zweite Element wird auf
3.0
gesetzt.
<Parameters> <ParameterArray name="my_array_param" type="double"> <Value ref="flow_var_1"/> <Value>3.0</Value> </ParameterArray> <Parameters/>
Example-3
Im folgenden Beispiel wird my_array_param
als boolesches Array deklariert und auf den Wert der Ablaufvariablen flow_var_1
festgelegt.
<Parameters> <ParameterArray name="my_array_param" type="boolean" ref="flow_var_1"> <Value>true</Value> <Value>false</Value> <Value>false</Value> </ParameterArray> <Parameters/>
Wenn in diesem Beispiel flow_var_1
erfolgreich aufgelöst wird, wird my_array_param
auf die Werte des Arrays flow_var_1
gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, wird das Array my_array_param
auf die Werte der Value
-Elemente festgelegt.
Example-4
Im folgenden Beispiel wird my_array_param
als JSON-Array deklariert und auf den Wert der Ablaufvariablen flow_var_1
gesetzt.
<Parameters> <ParameterArray name="my_array_param" type="json" ref="flow_var_1"/> <Parameters/>
Wenn in diesem Beispiel flow_var_1
erfolgreich aufgelöst wird, wird my_array_param
auf die Werte des Arrays flow_var_1
gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, meldet Apigee eine Ausnahme.
Example-5
Im folgenden Beispiel wird my_array_param
als String-Array deklariert und auf die Werte der Ablaufvariablen flow_var_1
gesetzt.
<Parameters> <ParameterArray name="my_array_param" type="string" ref="flow_var_1"> <Value ref="flow_var_2"/> <Value>test_string</Value> </ParameterArray> <Parameters/>
Wenn in diesem Beispiel flow_var_1
erfolgreich aufgelöst wird, wird my_array_param
auf die Werte des Arrays flow_var_1
gesetzt. Nur wenn flow_var_1
nicht aufgelöst werden kann, wird my_array_param
auf die in den <Value>
-Elementen angegebenen Werte festgelegt.
In der folgenden Tabelle werden die Attribute von <ParameterArray>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
name |
Erforderlich | String | Name des Parameter-Arrays. |
type |
Erforderlich | String | Datentyp des Parameterarrays. Unterstützte Typen sind integer , string , boolean und double . |
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee die Arraywerte lesen soll. Apigee verwendet die folgenden Kriterien, um den Parameterwert festzulegen:
|
<Value>
Gibt den Wert eines Arrayelements an.
Standardwert | – |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<ParameterArray> |
Untergeordnete Elemente | Keine |
Jedes Element des Arrays muss ein separates <Value>
-Element sein. Sie können den Wert auf folgende Weise angeben:
- <Value>val</Value>: Verwenden Sie val als Elementwert. Wenn val ungültig ist, meldet Apigee eine Ausnahme.
- <Value ref="refval"/>: Lösen Sie die Ablaufvariable refval zur Laufzeit auf und verwenden Sie ihren Wert. Apigee meldet eine Ausnahme, wenn der aufgelöste refval-Wert ungültig ist oder refval nicht aufgelöst wurde.
- <Value ref="refval">val</Value>: Lösen Sie die Ablaufvariable refval zur Laufzeit auf und verwenden Sie ihren Wert. Apigee meldet eine Ausnahme, wenn der aufgelöste refval-Wert ungültig ist. Wenn refval nicht aufgelöst wird, verwendet Apigee val als Elementwert.
- <Value>val1 $#flowval#$</Value>: Verwenden Sie
$#FLOW_VARIABLE_NAME#$
, um Werte der Ablaufvariablen als Vorlagenargument in Value zu übergeben. Apigee löst die Ablaufvariable flowval zur Laufzeit auf und verwendet ihren Wert. Eine Ausnahme wird gemeldet, wenn der aufgelöste flowval-Wert ungültig ist.
Das <Value>
-Element verwendet die folgende Syntax:
Syntax
<ParameterArray name="ARRAY_NAME" type="ARRAY_DATATYPE" ref="FLOW_VARIABLE_NAME"> <Value>PARAMETER_VALUE</Value> <Value ref="FLOW_VARIABLE_NAME"/> <Value ref="FLOW_VARIABLE_NAME">PARAMETER_VALUE</Value> </ParameterArray>
Beispiel 1
Im folgenden Beispiel wird my_array_param
als Ganzzahlparameterarray mit den Werten 1
, 2
und 3
deklariert:
<ParameterArray name="my_array_param" type="integer"> <Value>1</Value> <Value>2</Value> <Value>3</Value> </ParameterArray>
Beispiel 2
Im folgenden Beispiel wird my_array_param
als Stringparameter-Array mit Werten der Ablaufvariablen flow_var_1
und flow_var_2
deklariert:
<ParameterArray name="my_array_param" type="string"> <Value ref="flow_var_1"/> <Value ref="flow_var_2"/> </ParameterArray>
Beispiel 3
Im folgenden Beispiel wird my_array_param
als Stringparameter-Array deklariert:
<ParameterArray name="my_array_param" type="string"> <Value ref="flow_var_1">string_1</Value> <Value ref="flow_var_2">string_2</Value> </ParameterArray>
Wenn in diesem Beispiel die Ablaufvariable erfolgreich aufgelöst wird, wird der Array-Elementwert auf den Wert der flow_var_1
-Ablaufvariablen gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, wird der Arrayelementwert auf string_1
gesetzt.
Beispiel 4
Im folgenden Beispiel wird der Wert für den Stringarrayparameter template_strArray_param
mit dem in einer Vorlage übergebenen Wert der Ablaufvariablen festgelegt.
<Parameters> <ParameterArray name="template_strArray_param" type="string"> <Value>apple $#flow_var_1#$</Value> </ParameterArray> </Parameters>
Wenn in diesem Beispiel die Ablaufvariable erfolgreich aufgelöst wird, wird der Array-Elementwert auf den Wert der flow_var_1
-Ablaufvariablen gesetzt. Wenn flow_var_1
jedoch nicht aufgelöst wird, meldet Apigee eine Ausnahme.
In der folgenden Tabelle werden die Attribute von <Value>
beschrieben:
Attribut | Erforderlich? | Typ | Beschreibung |
---|---|---|---|
ref |
Optional | String | Gibt die Ablaufvariable an, aus der Apigee den Parameterwert lesen soll. Apigee verwendet die folgenden Kriterien, um den Parameterwert festzulegen:
|
<Request>
Gibt den Namen der Ablaufvariablen zum Speichern der Anfrage an.
Nach Ausführen der Richtlinie wird ein neues Anfragenachrichtenobjekt erstellt und in der FLOW_VARIABLE_NAME
-Variablen gespeichert, die Sie abfragen können, um die Anfrage zu lesen.
Wenn Sie keinen Namen einer Ablaufvariablen angeben, speichert die Richtlinie die Anfrage in der Anfragenachricht und überschreibt gegebenenfalls die vorhandene Anfragenachricht.
Standardwert | Anfrage |
Erforderlich? | Optional |
Typ | String |
Übergeordnetes Element |
<SetIntegrationRequest> |
Untergeordnete Elemente | Keine |
Das <Request>
-Element verwendet die folgende Syntax:
Syntax
<Request>FLOW_VARIABLE_NAME</Request>
Beispiel
Im folgenden Beispiel wird das Anfrageobjekt in der Ablaufvariable my_request_var
gespeichert:
<Request>my_request_var</Request>
Fehlercodes
In diesem Abschnitt werden die Fehlercodes, die Fehlermeldungen sowie die Fehlervariablen beschrieben, die von Apigee festgelegt werden, wenn diese Richtlinie einen Fehler auslöst. Diese Informationen sind wichtig, wenn Sie Fehlerregeln zur Verarbeitung von Fehlern entwickeln. Weitere Informationen finden Sie unter Was Sie über Richtlinienfehler wissen müssen und Fehler beheben.
Laufzeitfehler
Diese Fehler können bei Ausführung der Richtlinie auftreten.
Fehlercode | HTTP-Status | Ursache |
---|---|---|
steps.setintegrationrequest.EmptyParameterArray |
500 |
Dieser Fehler tritt auf, wenn das Element |
steps.setintegrationrequest.EmptyParameterArrayValue |
500 |
Dieser Fehler tritt auf, wenn das Element |
steps.setintegrationrequest.InvalidResolvedFlowVariable |
500 |
Dieser Fehler tritt auf, wenn die im Attribut
|
steps.setintegrationrequest.MismatchedTypeAndResolvedRef |
500 |
Dieser Fehler tritt auf, wenn die im |
steps.setintegrationrequest.MismatchedTypeAndResolvedRefOfParameterArray |
500 |
Dieser Fehler tritt auf, wenn die im |
steps.setintegrationrequest.MismatchedTypeAndResolvedRefOfParameterArrayValue |
500 |
Dieser Fehler tritt auf, wenn die im |
steps.setintegrationrequest.RequestVariableNotMessageType |
500 |
Dieser Fehler tritt auf, wenn die vom Request -Element angegebene Ablaufvariable nicht vom Typ Nachricht ist. |
steps.setintegrationrequest.RequestVariableNotRequestMessageType |
500 |
Dieser Fehler tritt auf, wenn die vom Element Request angegebene Ablaufvariable nicht vom Typ Anfragenachricht ist. |
steps.setintegrationrequest.UnresolvedVariable |
500 |
Dieser Fehler tritt auf, wenn Apigee die in den Elementen |
Fehlervariablen
Wenn in einer Richtlinie Ausführungsfehler auftreten, generiert Apigee Fehlermeldungen. Sie können sich diese Fehlermeldungen in der Fehlerantwort ansehen. Häufig sind vom System generierte Fehlermeldungen im Kontext Ihres Produkts möglicherweise nicht relevant. Sie können die Fehlermeldungen basierend auf dem Fehlertyp anpassen, um die Nachrichten aussagekräftiger zu machen.
Zum Anpassen der Fehlermeldungen können Sie entweder Fehlerregeln oder die RaiseFault-Richtlinie verwenden. Informationen zu Unterschieden zwischen Fehlerregeln und der RaiseFault-Richtlinie finden Sie unter FaultRules-Richtlinie im Vergleich zur RaiseFault-Richtlinie.
Prüfen Sie, ob Bedingungen mit dem Element Condition
in den Fehlerregeln und in der RaiseFault-Richtlinie verwendet werden.
Apigee stellt Fehlervariablen bereit, die für jede Richtlinie eindeutig sind. Die Werte der Fehlervariablen werden festgelegt, wenn eine Richtlinie Laufzeitfehler auslöst.
Mit diesen Variablen können Sie nach bestimmten Fehlerbedingungen suchen und entsprechende Maßnahmen ergreifen. Weitere Informationen zum Prüfen von Fehlerbedingungen finden Sie unter Bedingungen erstellen.
In der folgenden Tabelle werden die für diese Richtlinie spezifischen Fehlervariablen beschrieben.
Variablen | Wo | Beispiel |
---|---|---|
fault.name |
Der fault.name kann mit einem der Fehler übereinstimmen, die in der Tabelle Laufzeitfehler aufgeführt sind.
Der Fehlername ist der letzte Teil des Fehlercodes. |
fault.name Matches "UnresolvedVariable" |
SetIntegrationRequest.POLICY_NAME.failed |
POLICY_NAME ist der benutzerdefinierte Name der Richtlinie, die den Fehler ausgelöst hat. | SetIntegrationRequest.set-integration-request-1.failed = true |
Weitere Informationen
Weitere Informationen zur Application Integration finden Sie unter Übersicht: Application Integration.