API-Anfrage erfüllen


In dieser Anleitung wird ein Anwendungsfall beschrieben, in dem Sie Application Integration verwenden können, um Informationen für eine Ingress-API-Anfrage weiterzuleiten und abzurufen.

Übersicht

In dieser Anleitung erstellen Sie eine Integration mit einem API-Trigger, der API-Anfragen zum Abrufen von Kundeninformationen empfängt. Je nach Speicherort der API-Anfrage ruft die Integration die Kundendetails entweder aus einer MySQL- oder einer Oracle-Datenbank ab.

API-Abwicklungsdiagramm API-Abwicklungsdiagramm

Lernziele

In dieser Anleitung erfahren Sie, wie Sie die folgenden Aufgaben in Ihrer Integration ausführen:

  • Fügen Sie einen API-Trigger hinzu.
  • Connectors-Aufgaben für MySQL- und Oracle-Verbindungen hinzufügen und konfigurieren
  • Fügen Sie Datenabgleichsaufgaben hinzu und konfigurieren Sie sie, um die API-Nutzlast zu extrahieren und zuzuordnen.

Kosten

In dieser Anleitung verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:

Die Anleitung in diesem Tutorial wurde so gestaltet, dass Ihre Ressourcennutzung innerhalb der Limits der kostenlosen Stufe von Google Cloud bleibt.

Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.

Hinweise

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Secret Manager Viewer (roles/secretmanager.viewer), Secret Manager Secret Accessor (roles/secretmanager).

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Secret Manager Viewer (roles/secretmanager.viewer), Secret Manager Secret Accessor (roles/secretmanager).

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

Umgebung vorbereiten

MySQL-Datenbank einrichten

Stellen Sie eine Verbindung zu Ihrem MySQL-Server her und erstellen Sie eine Datenbank und eine Tabelle für die Verwendung in dieser Anleitung. In diesem Tutorial wird eine Datenbank mit einer Tabelle namens Customers verwendet, die die folgenden Zeilen enthält:

  +-------------+---------------+--------------------+------------------+
  | customer_id | customer_name | customer_emailID   | customer_city    |
  +-------------+---------------+--------------------+------------------+
  |           1 | Alex          | test-01@test.com   | New York         |
  |           2 | Dana          | test-02@test.com   | Seattle          |
  +-------------+---------------+--------------------+------------------+
  

Informationen zum Erstellen und Verwenden einer MySQL-Datenbank finden Sie in der MySQL-Dokumentation.

Oracle-Datenbank einrichten

Stellen Sie eine Verbindung zu Ihrer Oracle-Datenbank her und erstellen Sie eine Tabelle für die Verwendung in dieser Anleitung. In dieser Anleitung wird eine Datenbank mit einer SQL-Tabelle namens Customers mit den folgenden Zeilen verwendet:

  +-------------+---------------+--------------------+------------------+
  | customer_id | customer_name | customer_emailID   | customer_city    |
  +-------------+---------------+--------------------+------------------+
  |           1 | Amal          | test-01@test.com   | Delhi            |
  |           2 | Hao           | test-02@test.com   | Beijing          |
  +-------------+---------------+--------------------+------------------+
  

Informationen zum Erstellen und Verwenden einer Oracle-Datenbank finden Sie in der Oracle-Dokumentation.

Verbindungen konfigurieren

Für diese Anleitung müssen Sie die folgenden Verbindungen in Integration Connectors konfigurieren:

MySQL-Verbindung
MySQL-Verbindung in Integration Connectors konfigurieren, um die Customer-Tabellenentitäten abzurufen. Informationen zum Konfigurieren eines MySQL-Connectors finden Sie unter MySQL-Connector.
Oracle DB-Verbindung
Oracle-DB-Verbindung in Integration Connectors konfigurieren, um die Customer-Tabellenentitäten abzurufen. Informationen zum Konfigurieren eines MySQL-Connectors finden Sie unter Oracle DB-Connector.

Integration erstellen

So erstellen Sie eine neue Integration:

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

    Zu „Application Integration“

  2. Klicken Sie im linken Navigationsmenü auf Integrationen, um die Seite Integrationen zu öffnen.
  3. Klicken Sie auf  Integration erstellen und geben Sie auf der Seite Integration erstellen die folgenden Details an:
    1. Name der Integration:Geben Sie api_fulfilment ein.
    2. Beschreibung:Geben Sie Demo integration created for tutorial ein.
    3. Region:Wählen Sie us-central1 aus der Liste der unterstützten Regionen aus.
    4. Klicken Sie auf Erstellen, um den Integrationseditor zu öffnen.

Integrations-Trigger einrichten

Nachdem Sie die Integration erfolgreich erstellt haben, können Sie einen Integrationstrigger hinzufügen und konfigurieren, der die Integration für ein erkanntes Ereignis aufruft.

In dieser Anleitung wird ein API-Trigger verwendet, um die Integration für jede neue API-Anfrage aufzurufen. So fügen Sie einen API-Trigger in Ihre api_fulfilment-Integration ein und konfigurieren ihn:

  1. Klicken Sie im Integrationseditor auf Trigger, um eine Liste der verfügbaren Trigger aufzurufen.
  2. Klicken Sie auf das Element API-Trigger und platzieren Sie es im Integrationseditor.

    Application Integration füllt das Triggerlabel, den Triggernamen und die Trigger-ID automatisch aus. Die Trigger-ID ist eine maschinengenerierte ID im Format api_trigger/TRIGGER_NAME und wird in der API-Anfrage verwendet.

  3. Für diesen Trigger ist keine weitere Konfiguration erforderlich.

Integrationsvariablen erstellen

Integrationsvariablen ähneln Variablen, die in einer Programmiersprache verwendet werden. Daten in den Variablen können während der Ausführung der Integration gelesen und geschrieben werden. So erstellen Sie die erforderlichen Variablen für diese Anleitung:

  1. Klicken Sie in der Designer-Navigationsleiste auf  (Ein/Aus-Schaltfläche für Bereich), um den Bereich Variablen aufzurufen.
  2. Klicken Sie auf + Erstellen und erstellen Sie die folgenden Integrationsvariablen:
    Variablenname Datentyp Variablentyp
    location STRING Eingabe in die Integration
    customer_id STRING Eingabe in Integration
    customer_record JSON Ausgabe der Integration

Kundendaten aus MySQL-Datenbank abrufen

Wenn die Ingress-API-Anfrage vom Standort US stammt, gehen Sie so vor, um Kundendaten aus der MySQL-Datenbank abzurufen.

Verbindung zur MySQL-Datenbank herstellen

Führen Sie die folgenden Schritte aus, um eine Connectors-Aufgabe hinzuzufügen und zu konfigurieren, mit der die Kundendetails aus der MySQL-Tabelle Customers abgerufen werden:

  1. Klicken Sie im Integrationseditor auf Aufgaben, um eine Liste der verfügbaren Aufgaben aufzurufen.
  2. Klicken Sie auf das Element Connectors und platzieren Sie es im Integrationseditor.
  3. Wählen Sie das Connectors-Aufgabenelement im Designer aus, um den Konfigurationsbereich der Connectors-Aufgabe aufzurufen.
  4. Klicken Sie auf  und benennen Sie das Label Connectors in Fetch MySQL Data um.
  5. Klicken Sie auf Connector konfigurieren.
  6. Führen Sie auf der Seite Connectors-Aufgabeneditor die folgenden Schritte aus:
    1. Wählen Sie unter Verbindung auswählen die us-central1-Region aus.
    2. Wählen Sie Ihre Salesforce-Verbindung aus der Liste der verfügbaren Verbindungen aus.
    3. Klicken Sie auf Weiter.
    4. Wählen Sie unter Typ die Option Entitäten aus.
    5. Wählen Sie unter Entitäten/Aktionen festlegen aus der Liste der verfügbaren Entitäten die Option Kunden und dann Abrufen als Vorgang aus.
    6. Klicken Sie auf Fertig, um die Verbindungskonfiguration abzuschließen und den Bereich zu schließen.

Kunden-ID dem MySQL-Connector zuordnen

Mit der Aufgabe Datenabgleich wird die Kunden-ID dem MySQL-Connector zugeordnet. So fügen Sie den Datenabgleich in die Integration ein und konfigurieren ihn:

  1. Klicken Sie im Integrationseditor auf Aufgaben, um eine Liste der verfügbaren Aufgaben aufzurufen.
  2. Klicken Sie auf das Element Datenabgleich und platzieren Sie es im Integrationsdesigner.
  3. Wählen Sie das Element Datenabgleich im Designer aus, um den Konfigurationsbereich der Aufgabe aufzurufen.
  4. Klicken Sie auf  und benennen Sie die Aufgabe Datenabgleich in Map to MySQL um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.

    Mit den Transformationsfunktionen im Datenabgleichs-Editor können Sie Eingabevariablen den gewünschten Ausgabevariablen zuordnen. Die Ausgabe ist dann als Variable für alle anderen Integrationsaufgaben oder Trigger verfügbar. Weitere Informationen zum Zuordnen von Variablen finden Sie unter Zuordnung hinzufügen.

  6. Ordnen Sie die Trigger-customer_id-Integrationsvariable der automatisch generierten Connector-entityId(Fetch MySQL Data)-Eingabevariable zu.

    Schließen Sie das Fenster, wenn die Zuordnung abgeschlossen ist. Alle Änderungen werden automatisch gespeichert.

  7. Fügen Sie eine Edge-Verbindung von der Aufgabe MySQL zuordnen zum Connector MySQL-Daten abrufen hinzu.

MySQL-Kundendetails abrufen

So rufen Sie die Kundendetails über den MySQL-Connector ab:

  1. Klicken Sie im Integrationseditor auf Aufgaben, um eine Liste der verfügbaren Aufgaben aufzurufen.
  2. Klicken Sie auf das Element Datenabgleich und platzieren Sie es im Integrationsdesigner.
  3. Klicken Sie auf das Element Datenabgleich im Designer, um den Konfigurationsbereich der Aufgabe aufzurufen.
  4. Klicken Sie auf  und benennen Sie die Aufgabe Datenabgleich in Get MySQL data um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.
  6. Ordnen Sie die MySQL-Ausgabevariable connectorOutputPayload (Fetch MySQL Data) der Integrationsvariable customer_record zu.

    Schließen Sie das Fenster, wenn die Zuordnung abgeschlossen ist. Alle Änderungen werden automatisch gespeichert.

  7. Fügen Sie eine Edge-Verbindung vom Connector MySQL-Daten abrufen zur Aufgabe MySQL-Daten abrufen hinzu.

Kundendaten aus der Oracle-Datenbank abrufen

Wenn die Ingress-API-Anfrage vom Standort APAC stammt, gehen Sie so vor, um Kundendaten aus der Oracle-Datenbank abzurufen.

Verbindung zur Oracle-Datenbank herstellen

Führen Sie die folgenden Schritte aus, um eine Connectors-Aufgabe hinzuzufügen und zu konfigurieren, mit der die Kundendetails aus der Oracle-Tabelle Customers abgerufen werden:

  1. Klicken Sie im Integrationseditor auf Aufgaben, um eine Liste der verfügbaren Aufgaben aufzurufen.
  2. Klicken Sie auf das Element Connectors und platzieren Sie es im Integrationseditor.
  3. Wählen Sie das Connectors-Aufgabenelement im Designer aus, um den Konfigurationsbereich der Connectors-Aufgabe aufzurufen.
  4. Klicken Sie auf  und benennen Sie das Label Connectors in Fetch Oracle Data um.
  5. Klicken Sie auf Connector konfigurieren.
  6. Führen Sie auf der Seite Connectors-Aufgabeneditor die folgenden Schritte aus:
    1. Wählen Sie unter Verbindung auswählen die us-central1-Region aus.
    2. Wählen Sie Ihre Salesforce-Verbindung aus der Liste der verfügbaren Verbindungen aus.
    3. Klicken Sie auf Weiter.
    4. Wählen Sie unter Typ die Option Entitäten aus.
    5. Wählen Sie unter Entitäten/Aktionen festlegen aus der Liste der verfügbaren Entitäten die Option Kunden und dann Abrufen als Vorgang aus.
    6. Klicken Sie auf Fertig, um die Verbindungskonfiguration abzuschließen und den Bereich zu schließen.

Kundennummer dem Oracle-Connector zuordnen

So fügen Sie den Datenabgleich in die Integration ein und konfigurieren ihn:

  1. Klicken Sie im Integrationseditor auf Aufgaben, um eine Liste der verfügbaren Aufgaben aufzurufen.
  2. Klicken Sie auf das Element Datenabgleich und platzieren Sie es im Integrationsdesigner.
  3. Wählen Sie das Element Datenabgleich im Designer aus, um den Konfigurationsbereich der Aufgabe aufzurufen.
  4. Klicken Sie auf  und benennen Sie die Aufgabe Datenabgleich in Map to Oracle um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.
  6. Ordnen Sie die Trigger-customer_id-Integrationsvariable der automatisch generierten Connector-entityId(Fetch Oracle Data)-Eingabevariable zu.

    Schließen Sie das Fenster, wenn die Zuordnung abgeschlossen ist. Alle Änderungen werden automatisch gespeichert.

  7. Fügen Sie eine Edge-Verbindung von der Aufgabe Für Oracle zuordnen zum Connector Oracle-Daten abrufen hinzu.

Oracle-Kundendetails abrufen

So rufen Sie die Kundendetails über den Oracle-Connector ab:

  1. Klicken Sie im Integrationseditor auf Aufgaben, um eine Liste der verfügbaren Aufgaben aufzurufen.
  2. Klicken Sie auf das Element Datenabgleich und platzieren Sie es im Integrationsdesigner.
  3. Klicken Sie auf das Element Datenabgleich im Designer, um den Konfigurationsbereich der Aufgabe aufzurufen.
  4. Klicken Sie auf  und benennen Sie die Aufgabe Datenabgleich in Get Oracle data um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.
  6. Ordnen Sie die Oracle-connectorOutputPayload (Fetch Oracle Data)-Ausgabevariable der customer_record-Integrationsvariable zu.

    Schließen Sie das Fenster, wenn die Zuordnung abgeschlossen ist. Alle Änderungen werden automatisch gespeichert.

  7. Fügen Sie eine Edge-Verbindung vom Connector Oracle-Daten abrufen zur Aufgabe Oracle-Daten abrufen hinzu.

Edge-Bedingung hinzufügen

Mit einer Edge-Bedingung können Sie die Bedingungen angeben, die erfüllt sein müssen, damit die Steuerung über eine Integration an die durch die Edge verbundene Aufgabe übergeben wird. Nachdem Sie die erforderlichen Aufgaben hinzugefügt und konfiguriert haben, können Sie eine Edge-Bedingung hinzufügen, um den Ablauf der Integration zu definieren.

Die folgende Edge-Bedingung steuert den Ablauf der Integration basierend auf der Integrationsvariablen location:

  1. Fügen Sie eine Edge-Verbindung vom API-Trigger zur Aufgabe MySQL zuordnen mit der folgenden Edge-Bedingung hinzu:
      $location$ = "US"
  2. Fügen Sie dem Trigger API eine weitere Edge-Verbindung zur Aufgabe Oracle zuordnen mit der folgenden Edge-Bedingung hinzu:
      $location$ = "APAC"

Beispiel für den Integrationsablauf

Die folgende Abbildung zeigt ein Beispiellayout der Integration, die mit dieser Anleitung erstellt wurde.

Beispielbild mit dem Integrationsablauf Beispielbild mit dem Integrationsablauf

Integration veröffentlichen

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.

Integration testen

Integration über den Integrationseditor testen

So testen Sie die Integration über den Integrationseditor:

  1. Klicken Sie in der Symbolleiste des Integrationseditors auf  Testen.

    Der Bereich Integration testen wird angezeigt.

  2. Sie werden aufgefordert, die Testwerte für die Eingabevariablen der Integration einzugeben. Gehen Sie für diesen Test so vor:.
    • customer_id::Geben Sie 1 ein.
    • location:Geben Sie APAC ein.
  3. Klicken Sie auf Integration testen.

Die Integration wird erfolgreich ausgeführt und der folgende Kundenwert wird angezeigt:

{ 
  "CUSTOMER_ID": 1,
  "CUSTOMER_NAME": "Amal"
  "CUSTOMER_EMAILID": "test-01@test.com "
  "CUSTOMER_CITY": "Delhi"
}

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

Mit einem REST API-Aufruf testen

Nachdem die Integration veröffentlicht wurde und ausgeführt wird, können Sie sie mit dem folgenden POST-REST-Aufruf aufrufen:

URL:
https://integrations.googleapis.com/v1/projects/project-name/locations/-/integrations/api_fulfilment:execute 
Anfragetext:
{"trigger_id":"api_trigger/api_fulfilment_API_1"}

Beispiel: API-Anfrage mit benutzerdefinierten Eingaben stellen

curl -v -X POST -H "Content-Type: application/json" 'https://integrations.googleapis.com/v1/projects/connectors-ip-test/locations/us-central1/integrations/api-fulfillment-integration:execute' -H "Authorization: Bearer $(gcloud auth AUTH_PROFILE)" -d  '{ "triggerId": "api_trigger/api-fulfillment-integration_API_1", "inputParameters": { "customer_id": {"string_value": 1}, "location" : {"string_value" : "US"}} }'

Die API gibt die Antwort auf die Ausführung der Integration zurück, die den folgenden JSON-Code enthält:

  { 
    "CUSTOMER_ID": 2,
    "CUSTOMER_NAME": "Dana"
    "CUSTOMER_EMAILID": "test-02@test.com "
    "CUSTOMER_CITY": "Seattle"
  }
  

Bereinigen

Wenn Sie vermeiden möchten, dass Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden, heben Sie die Veröffentlichung der Integration auf und löschen Sie die in Integration Connectors erstellten Verbindungen.

  • Wenn Sie die Veröffentlichung dieser Integration aufheben möchten, klicken Sie in der Symbolleiste des Integrationseditors auf Veröffentlichung aufheben. Weitere Informationen finden Sie unter Integrationen löschen.
  • Informationen zum Löschen einer Verbindung finden Sie unter Connectors verwalten.