Erstellen einer API-Anfrage – Headless-Einrichtung

Letzte Aktualisierung: 2024-01-15

Erfahren Sie, wie Sie die GraphQL-API für die Headless-Bereitstellung von Inhaltsfragmentinhalten und die Assets-REST-API von AEM zur Verwaltung von Inhaltsfragmenten verwenden.

Was sind GraphQL- und Assets-REST-APIs?

Nachdem Sie einige Inhaltsfragmente erstellt haben, können Sie die APIs von AEM verwenden, um sie headless bereitzustellen.

Der Rest dieses Handbuchs konzentriert sich auf den GraphQL-Zugriff und die Bereitstellung von Inhaltsfragmenten.

Aktivieren eines GraphQL-Endpunkts

Bevor die GraphQL-APIs verwendet werden können, muss ein GraphQL-Endpunkt erstellt werden.

  1. Gehen Sie zu Tools, Allgemein und wählen Sie GraphQL aus.

  2. Wählen Sie Erstellen aus.

  3. Das Dialogfeld Neuen GraphQL-Endpunkt erstellen wird geöffnet. Hier können Sie Folgendes angeben:

    • Name: Name des Endpunkts; Sie können einen beliebigen Text eingeben.
    • GraphQL-Schema verwenden, das bereitgestellt wurde von: Verwenden Sie die Dropdown-Liste, um die gewünschte Konfiguration auszuwählen.
  4. Bestätigen Sie mit Erstellen.

  5. In der Konsole wird nun ein Pfad basierend auf der zuvor erstellten Konfiguration angezeigt. Dieser Pfad wird zum Ausführen von GraphQL-Abfragen verwendet.

    /content/cq:graphql/<configuration-name>/endpoint
    

Weitere Informationen zur Aktivierung von GraphQL-Endpunkten finden Sie hier.

Abfragen von Inhalten unter Verwendung von GraphQL mit GraphiQL

Informationsarchitektinnen und -architekten entwerfen Abfragen für ihre Kanalendpunkte, um Inhalte bereitzustellen. Berücksichtigen Sie diese Abfragen pro Endpunkt und Modell nur einmal. Für die Zwecke dieses Erste-Schritte-Handbuchs müssen Sie nur eine erstellen.

GraphiQL ist eine IDE, die in Ihrer AEM-Umgebung integriert ist; sie wird verfügbar/sichtbar, nachdem Sie Ihre Endpunkte konfiguriert haben.

  1. Melden Sie sich bei AEM as a Cloud Service an und rufen Sie die GraphiQL-Oberfläche auf:

    Sie können auf den Abfrage-Editor wie folgt zugreifen:

    • Instrumente > Allgemein > GraphQL Query Editor
    • direkt, zum Beispiel: http://localhost:4502/aem/graphiql.html
  2. Die GraphiQL-IDE ist ein In-Browser-Abfrage-Editor für GraphQL. Sie können damit Abfragen zum Abrufen von Inhaltsfragmenten erstellen, um diese als JSON-Datei headless bereitzustellen.

    • In der Dropdown-Liste oben rechts können Sie den Endpunkt auswählen.
    • In einem Bereich ganz links werden die persistenten Abfragen aufgelistet (sofern verfügbar)
    • Im mittleren linken Bereich können Sie Ihre Abfrage erstellen.
    • Im mittleren rechten Bereich werden die Ergebnisse angezeigt.
    • Der Abfrage-Editor bietet Code-Vervollständigung und Hotkeys, um die Abfrage einfach auszuführen.

    GraphiQL-Editor

  3. Angenommen, das von uns erstellte Modell person wurde mit den Feldern firstName, lastName und position aufgerufen. Wir können dann eine einfache Abfrage erstellen, um den Inhalt unseres Inhaltsfragments abzurufen.

    query
    {
      personList {
        items {
          _path
          firstName
          lastName
          position
        }
      }
    }
    
  4. Geben Sie die Abfrage in das linke Bedienfeld ein.
    GraphiQL-Abfrage

  5. Klicken Sie auf die Schaltfläche Abfrage ausführen oder verwenden Sie den Ctrl-Enter-Hotkey. Die Ergebnisse werden als JSON im rechten Bedienfeld angezeigt.
    GraphiQL-Ergebnisse

  6. Klicken Sie oben rechts auf der Seite auf den Link Dokumente, um die kontextbezogene Dokumentation anzuzeigen, damit Sie Abfragen erstellen können, die sich an Ihre eigenen Modelle anpassen.
    GraphiQL-Dokumentation

GraphQL ermöglicht strukturierte Abfragen, die nicht nur auf bestimmte Datensätze oder einzelne Datenobjekte abzielen, sondern auch bestimmte Elemente der Objekte und verschachtelte Ergebnisse bereitstellen können, Unterstützung für Abfragevariablen bieten und vieles mehr.

GraphQL kann sowohl iterative API-Anfragen als auch Überbereitstellungen vermeiden und ermöglicht stattdessen eine Massenbereitstellung von genau dem, was zum Rendern als Antwort auf eine einzelne API-Abfrage benötigt wird. Das resultierende JSON kann verwendet werden, um Daten in anderen Sites oder Mobile Apps bereitzustellen.

Nächste Schritte

Das war´s! Sie haben nun ein grundlegendes Verständnis für das Headless-Content-Management in AEM. Es gibt viele weitere Ressourcen, mit deren Hilfe Sie sich ein umfassendes Verständnis der verfügbaren Funktionen aneignen können.

Auf dieser Seite