Beispielintegration ausprobieren

Wenn Sie Application Integration zum ersten Mal in Ihrem Google Cloud-Projekt einrichten, wird standardmäßig eine nicht veröffentlichte Beispielintegration mit dem Namen ExampleIntegration-EcomOrderProcessing erstellt.

Beispielintegration ansehen

So rufen Sie die Beispielintegration auf:

  1. Rufen Sie in der Google Cloud Console die Seite Application Integration auf.

    Zu „Application Integration“

  2. Klicken Sie im linken Navigationsmenü auf Integrations (Integrationen), um die Seite Integrations (Integrationen) zu öffnen.
  3. Klicken Sie auf die Integration mit dem Namen ExampleIntegration-EcomOrderProcessing.

    Die Beispielintegration wird im Integrationseditor geöffnet, ähnlich dem folgenden Layout:

    Beispielbild für das Integrationslayout Beispielbild für das Integrationslayout

Beispielintegration für E-Commerce

Mit dieser Beispielintegration können Sie sich mit den verschiedenen Triggern, Aufgaben und Konzepten von Application Integration vertraut machen.

Die Beispielintegration veranschaulicht ein einfaches E-Commerce-Back-End-Szenario, in dem der folgende Vorgang für die Bestellabwicklung implementiert wird:

  1. Sie erhalten die folgende Nutzlast für die Bestellanfrage von einem API-Endpunkt:
    {
      "order_no": "12345",
      "buyer_id": "raambo",
      "line_items": [
        {
          "line": 1,
          "sku": "tr100",
          "vendor": "Internal",
          "quantity": 1,
          "price_per_unit": 10
        },
        {
          "line": 2,
          "sku": "tbz",
          "vendor": "External",
          "quantity": 24.0,
          "price_per_unit": 1
        }
      ]
    }
  2. Extrahieren Sie die Bestellnutzlast und berechnen Sie den Gesamtbestellwert.
  3. Prüfen Sie, ob der Gesamtwert der Bestellung mindestens 100 $beträgt. Falls ja, holen Sie eine zusätzliche Genehmigung ein, um fortzufahren.
  4. Prüfen Sie, ob eines der Bestellartikel einen externen Anbieter hat. Wenn ja, senden Sie die Details mit einem REST API-Aufruf an den Anbieter.
  5. Senden Sie die Bestellantwort mit dem Gesamtbestellwert, gefilterten Artikeln externer Anbieter und dem entsprechenden HTTP-Antwortstatus.

In der folgenden Tabelle sind alle Trigger, Aufgaben und Edge-Bedingungen aufgeführt, die in ExampleIntegration-EcomOrderProcessing verwendet werden:

Komponente Konfiguration Beschreibung
API-Trigger

(OrderProcessAPITrigger)

Trigger-ID: api_trigger/ecom-order-processing_API_1 Ruft die Integration für jede Bestellanfrage auf.
Aufgabe „Datenabgleich“

Gesamtbestellpreis ermitteln

Eingabe Ausgabe Extrahiert die JSON-Eingabevariable order_request und durchläuft alle Bestellpositionen mit der Zuordnungsfunktion FOR_EACH, um den Gesamtwert des Bestellpreises zu berechnen.

Der Gesamtwert des Bestellpreises wird berechnet, indem der Artikel quantity und die price_per_item mit den Mapping-Funktionen GET_PROPERTY und MULTIPLY multipliziert werden.

Der endgültige Wert wird dann in den Datentyp „double“ konvertiert und in der Ausgabevariable total_order_value gespeichert.

orders_request.line_items
.FOR_EACH(~obj1->~obj1
  .GET_PROPERTY("quantity")
  .TO_DOUBLE()
  .MULTIPLY(~obj1
    .GET_PROPERTY("price_per_unit")
    .TO_DOUBLE()))
.TO_DOUBLE_ARRAY()
.SUM()
total_order_value
Edge-Bedingung

(Gesamtbestellwert über dem Grenzwert)

Zustand : $total_order_value$ >= $threshold_order_value$ Prüft, ob der Gesamtwert der Bestellung größer oder gleich 100 $ist. Wenn ja, wird die Steuerung an eine Genehmigungsaufgabe übergeben.
Edge-Bedingung

(Gesamtbestellwert unter Grenzwert)

Zustand : $total_order_value$ < $threshold_order_value$ Prüft, ob der Gesamtwert der Bestellung unter 100 $liegt. Falls ja, wird die Steuerung an die Aufgabe Externe Elemente filtern übergeben.
Aufgabe „Genehmigung“

(Genehmigung)

Empfänger:Enter the approver's email address

Zum Testen dieser Beispielintegration können Sie Ihre E‑Mail-Adresse verwenden, um den erfolgreichen Abschluss der Integration zu bestätigen.

Senden Sie eine E‑Mail mit einer Genehmigungsanfrage an einen oder mehrere Integrationsnutzer. Die E-Mail enthält einen Link zur Integration, über den die Nutzer die Anfrage manuell genehmigen oder ablehnen können.
Aufgabe „Datenabgleich“

(Externe Elemente filtern)

Eingabe Ausgabe Extrahiert die JSON-Eingabevariable order_request und filtert alle Bestellpositionen mit externen Anbietern mithilfe der Zuordnungsfunktion FILTER.

Die gefilterten Werte werden dann in der Ausgabevariable filtered_external_items gespeichert.

orders_request
.GET_PROPERTY("line_items")
.FILTER(~obj1->~obj1
  .GET_PROPERTY("vendor")
  .TO_STRING()
  .EQUALS("External"))
filtered_external_items
Aufgabe „Für jede Schleife“

(Für jede Schleife)

Liste zum Iterieren:filtered_external_items

API-Trigger-ID:api_trigger/ecom-order-processing_API_2

Name der Integration: ExampleIntegration-EcomOrderProcessing

Die Aufgabe durchläuft die Variable filtered_external_items und ruft die Subintegration für jedes Element im Array auf. Außerdem wird die Antwort jeder Ausführung in rest_call_response_status erfasst, wobei jedes Element des Arrays die Antwort aus einer bestimmten Ausführung enthält.
API-Trigger

(Report ExternalOrders)

Trigger-ID: api_trigger/ecom-order-processing_API_2 Ruft die Subintegration für jedes Element in „filtered_external_items“ auf.
Aufgabe "REST-Endpunkt aufrufen"

(REST-Endpunkt aufrufen)

Basis-URL des Endpunkts : https://mocktarget.apigee.net/echo

HTTP-Methode:POST

Anfragetext: sub_integration_input

Führt einen REST-Aufruf an https://mocktarget.apigee.net/echo aus.

Beispielintegration veröffentlichen und testen

Um die Integration zu veröffentlichen, klicken Sie in der Symbolleiste des Integrationseditors auf Veröffentlichen.

Nachdem Sie Ihre Integration erfolgreich veröffentlicht haben, können Sie die Ausführungslogs der veröffentlichten Integration aufrufen und prüfen. Klicken Sie auf Abbildung mit dem Symbol für AusführungslogsAusführungsprotokolle für diese Integration ansehen, um die Logs aufzurufen. Die Seite Ausführungslogs wird angezeigt.

Über den Integrationseditor testen

So testen Sie die Beispielintegration:

  1. Klicken Sie in der Symbolleiste des Integrationseditors auf Testen und wählen Sie dann OrderProcessAPITrigger aus.

    Der Bereich Integration testen wird angezeigt.

  2. Sie werden aufgefordert, die Eingabevariable orders_request zu bearbeiten. Für diesen Test können Sie den Wert quantity auf 240 aktualisieren. Die Eingabevariable für die Aktualisierung orders_request sollte in etwa so aussehen:
        {
          "order_no": "12345",
          "buyer_id": "raambo",
          "line_items": [
            {
              "line": 1,
              "sku": "tr100",
              "vendor": "Internal",
              "quantity": 1,
              "price_per_unit": 10
            },
            {
              "line": 2,
              "sku": "tbz",
              "vendor": "External",
              "quantity": 240,
              "price_per_unit": 1
            }
          ]
        }
        
  3. Klicken Sie auf Integration testen.

Da die aktualisierte Menge orders_request größer als 200 ist, sendet die Beispielintegration eine E-Mail für eine Genehmigungsanfrage an die E-Mail-Adresse, die im Feld Empfänger der Genehmigungsaufgabe angegeben ist. Der Vorgang für die Integrationsbestellung wird abgeschlossen, sobald die Genehmigung eingegangen ist.

Weitere Informationen zu Tests finden Sie unter Integrationen testen und veröffentlichen.

So prüfen Sie die Ausführungsprotokolle und rufen den Status und die Nutzlast der jeweiligen Integration auf:

  1. Klicken Sie im Integrationseditor auf Abbildung mit dem Symbol für AusführungslogsAusführungsprotokolle für diese Integration ansehen. Die Seite Ausführungslogs wird angezeigt.
  2. Auf der Seite Ausführungslogs können Sie Details zu jedem Versuch anzeigen, eine Integration auszuführen. Jeder Eintrag enthält Details für den Ausführungsversuch. Beispiele:
    • Name der Integration
    • Ausführungs-ID
    • Status
    • Beginn
    • Dauer
    • Integrationsversion
    • Trigger-ID
  3. Klicken Sie neben der ausgeführten Integration auf den Erweiterungspfeil (>), um eine erweiterte Liste von Aufgaben und Variablen in der Integration aufzurufen. Außerdem werden der Aufgabenstatus und die Nutzlasten von Variablen angezeigt.

Mit einem REST API-Aufruf testen

Testlauf 1: Anfrage mit Standardeingaben senden

  curl -X POST -H "Content-Type: application/json" -d '{"trigger_id":"api_trigger/ecom-order-processing_API_1"}' 'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME:execute' -H "Authorization: Bearer $(gcloud auth print-access-token)"

Testlauf 2: Anfrage mit benutzerdefinierten Eingaben senden

  curl -X POST -H "Content-Type: application/json" -d '{ "triggerId": "api_trigger/ecom-order-processing_API_1", "inputParameters": { "orders_request": { "jsonValue": "{\n \"order_no\": \"12345\",\n \"buyer_id\": \"raambo\",\n \"line_items\": [{\n \"line\": 1.0,\n \"sku\": \"tr100\",\n \"vendor\": \"Internal\",\n \"quantity\": 1.0,\n \"price_per_unit\": 10.0\n }, {\n \"line\": 2.0,\n \"sku\": \"tbz\",\n \"vendor\": \"External\",\n \"quantity\": 24.0,\n \"price_per_unit\": 2.0\n }]\n}" } } }' 'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME:execute' -H "Authorization: Bearer $(gcloud auth print-access-token)"

Ersetzen Sie Folgendes:

  • PROJECT_ID: ID Ihres Google Cloud-Projekts.
  • LOCATION: Der Integrationsstandort. Weitere Informationen finden Sie unter Application Integration-Standorte.
  • INTEGRATION_NAME: Name der Integration.

Testausgabe

Die API gibt die Antwort für die Ausführung der Integration zurück, die alle Werte der Ausgabevariablen der Integration enthält.

Kontingente und Limits

Weitere Informationen zu allen Kontingenten und Limits finden Sie unter Kontingente und Limits.