Ausführung von API-Anfragen


In dieser Anleitung wird beschrieben, wie Sie mit Application Integration Informationen für eine Ingress-API-Anfrage weiterleiten und abrufen können.

Überblick

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

API-Fulfillment-Diagramm API-Fulfillment-Diagramm

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 Datenzuordnungsaufgaben 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 Anweisungen in dieser Anleitung sind so konzipiert, dass Ihre Ressourcennutzung innerhalb der Grenzen der Immer kostenlos-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. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  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. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  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 dieser Anleitung wird eine Datenbank verwendet, die eine Tabelle namens Customers mit den 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 diese Anleitung. In dieser Anleitung wird eine Datenbank verwendet, die eine SQL-Tabelle namens Customers mit den folgenden Zeilen enthält:

  +-------------+---------------+--------------------+------------------+
  | 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
Konfigurieren Sie eine MySQL-Verbindung in Integration Connectors, um die Customer-Tabellenentitäten abzurufen. Informationen zum Konfigurieren eines MySQL-Connectors finden Sie unter MySQL-Connector.
Oracle DB-Verbindung
Konfigurieren Sie eine Oracle DB-Verbindung in Integration Connectors, um die Customer-Tabellenentitäten abzurufen. Informationen zum Konfigurieren eines MySQL-Connectors finden Sie unter Oracle DB-Connector.

Verknüpfung 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 Navigationsmenü auf Integrations (Integrationen). Die Seite Integrations List (Integrationsliste) wird angezeigt.
  3. Klicken Sie auf Verknüpfung erstellen und geben Sie auf der Seite Create Integration (Integration erstellen) die folgenden Details an:
    1. Integration name (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.

Integrationstrigger einrichten

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

In dieser Anleitung wird ein API-Trigger verwendet, um die Integration für jede neue API-Anfrage aufzurufen. So fügen Sie Ihrer api_fulfilment-Integration einen API-Trigger hinzu 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, die in der API-Anfrage verwendet wird.

  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 gesamten Integration gelesen und geschrieben werden. So erstellen Sie die erforderlichen Variablen für diese Anleitung:

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

Kundendaten aus der MySQL-Datenbank abrufen

Wenn die API-Anfrage für eingehenden Traffic 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, um Kundendaten aus der MySQL-Tabelle Customers abzurufen:

  1. Klicken Sie im Integrationseditor auf Tasks (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 im Designer das Aufgabenelement Connectors aus, um den Konfigurationsbereich der Aufgabe Connectors 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-Task-Editor folgende Schritte aus:
    1. Wählen Sie unter Verbindung auswählen die Region us-central1 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 Set entities/actions (Entitäten/Aktionen festlegen) die Option Customers (Kunden) aus der Liste der verfügbaren Entitäten und dann Get (Abrufen) als Operation (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 Datenzuordnung wird die Kunden-ID dem MySQL-Connector zugeordnet. So fügen Sie der Integration die Datenzuordnung hinzu und konfigurieren sie:

  1. Klicken Sie im Integrationseditor auf Tasks (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 im Designer das Element Datenzuordnung aus, um den Bereich zur Aufgabenkonfiguration aufzurufen.
  4. Klicken Sie auf und benennen Sie die Aufgabe Datenzuordnung 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 Integrationsvariable des Triggers customer_id der automatisch generierten Eingabevariablen entityId(Fetch MySQL Data) des Connectors zu.

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

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

MySQL-Kundendetails abrufen

So rufen Sie die Kundendaten aus dem MySQL-Connector ab:

  1. Klicken Sie im Integrationseditor auf Tasks (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 im Designer auf das Element Datenzuordnung, um den Bereich zur Aufgabenkonfiguration aufzurufen.
  4. Klicken Sie auf und benennen Sie die Aufgabe Datenzuordnung in Get MySQL data um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.
  6. Ordnen Sie die MySQL-Ausgabevariable connectorOutputPayload (Fetch MySQL Data) der Integrationsvariablen 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 Abruf von MySQL-Daten zur Aufgabe MySQL-Daten abrufen hinzu.

Kundendaten aus 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, um die Kundendetails aus der Oracle-Tabelle Customers abzurufen:

  1. Klicken Sie im Integrationseditor auf Tasks (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 im Designer das Aufgabenelement Connectors aus, um den Konfigurationsbereich der Aufgabe Connectors 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-Task-Editor folgende Schritte aus:
    1. Wählen Sie unter Verbindung auswählen die Region us-central1 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 Set entities/actions (Entitäten/Aktionen festlegen) die Option Customers (Kunden) aus der Liste der verfügbaren Entitäten und dann Get (Abrufen) als Operation (Vorgang) aus.
    6. Klicken Sie auf Fertig, um die Verbindungskonfiguration abzuschließen und den Bereich zu schließen.

Kunden-ID dem Oracle-Connector zuordnen

So fügen Sie der Integration die Datenzuordnung hinzu und konfigurieren sie:

  1. Klicken Sie im Integrationseditor auf Tasks (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 im Designer das Element Datenzuordnung aus, um den Bereich zur Aufgabenkonfiguration aufzurufen.
  4. Klicken Sie auf und benennen Sie die Aufgabe Datenzuordnung in Map to Oracle um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.
  6. Ordnen Sie die Integrationsvariable des Triggers customer_id der automatisch generierten Eingabevariablen entityId(Fetch Oracle Data) des Connectors zu.

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

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

Oracle-Kundendetails abrufen

So rufen Sie die Kundendetails aus dem Oracle-Connector ab:

  1. Klicken Sie im Integrationseditor auf Tasks (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 im Designer auf das Element Datenzuordnung, um den Bereich zur Aufgabenkonfiguration aufzurufen.
  4. Klicken Sie auf und benennen Sie die Aufgabe Datenzuordnung in Get Oracle data um.
  5. Klicken Sie auf Datenabgleichs-Editor öffnen.
  6. Ordnen Sie die Oracle-Ausgabevariable connectorOutputPayload (Fetch Oracle Data) der Integrationsvariablen 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 Oracle-Daten abrufen zur Aufgabe Oracle-Daten abrufen hinzu.

Randbedingung hinzufügen

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

Die folgende Edge-Bedingung steuert den Integrationsablauf basierend auf der Integrationsvariable location:

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

Beispiel für den Integrationsablauf

Die folgende Abbildung zeigt ein Beispiellayout der mit dieser Anleitung erstellten Integration.

Beispielbild für den Integrationsablauf Beispielbild für den Integrationsablauf

Integration veröffentlichen

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

Nachdem die Integration veröffentlicht wurde, können Sie die Ausführungsprotokolle 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 Protokolle aufzurufen. Die Seite Ausführungsprotokolle wird angezeigt.

Integration testen

Integration über den Integrationseditor testen

Führe die folgenden Schritte aus, um die Integration über den Integrationseditor zu testen:

  1. Klicken Sie in der Symbolleiste des Integrationseditors auf Test (Testen).

    Der Bereich Integration testen wird angezeigt.

  2. Sie werden aufgefordert, die Testwerte für die Integrationseingabevariablen 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 senden

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 Integrationsausführungsantwort zurück, die folgenden JSON-Code enthält:

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

Bereinigen

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

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