Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Headless-Auslieferung

Für CMS-Entwickler, die Exponential-Inhalte an Apps und Frontends anderer Technologien ausliefern. Die Seite stellt dar, was es gibt, nämlich die REST-Schnittstelle, expservices, Serverfunktionen von ezjscore, eigene…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/cms-developers/headless-delivery.md

On this page

This page is a translation. Read the English original

Headless-Auslieferung

Diese Seite richtet sich an Entwickler, die Inhalte in Exponential verwalten und anderswo zeigen möchten: in einer mobilen App, einer Single-Page-Anwendung, einem Kiosk, einer anderen Website. Exponential 6 ist ein vollständiges CMS mit eigenen Templates und kann Inhalte neben seinen Seiten oder statt ihrer als Daten ausliefern. Diese Seite listet die vorhandenen Wege auf und wie Sie wählen.

Inhalt

  1. Die Möglichkeiten
  2. Die REST-Schnittstelle
  3. expservices
  4. Serverfunktionen von ezjscore
  5. Eine eigene JSON-View
  6. Feeds
  7. Die Wahl
  8. Muster, die funktionieren
  9. Was es nicht gibt

Die Möglichkeiten

WegAdresseAuthentifizierungAm besten für
REST-Schnittstelle (ezprestapi)/api/ezp/v1/..., /api/ezp/v2/...persönlicher API-Schlüssel, OAuth2-TokenLesen von Knoten, Unterelementen und Feldern; Anlegen und Entfernen in v2
expservices/ezjscore/call/exp<domain>::<method>Session-Cookie oder ein persönliches Token (expt_...)die Funktionen der Administration: Inhalte, Benutzer, Shop, Medien, Layouts und mehr
Eigene Serverfunktionen von ezjscore/ezjscore/call/<class>::<function>Session und Richtlinien der Websitekleine JSON-Aufrufe für Ihr eigenes Frontend
Eine Modul-View, die JSON antwortet/<your module>/<view>/...Session und Richtlinien der Websiteein eigener Endpunkt mit eigener Form
FeedsRSS-Export und Feed-Ausgabe von expservicesöffentlich oder wie die Website es erlaubtListen von Inhalten für Leser und Aggregatoren

Die REST-Schnittstelle

Die dokumentierte Inhalts-API: Knoten, Unterelemente mit Offset, Limit und Sortierung, Felder, Objekte; Schreibzugriffe in v2. In v2 fügt OutputFormat=xhtml die gerenderte Ausgabe der Ansicht des Knotens hinzu, sodass ein Client Rich Text als HTML zeigen kann, das die Templates der Website gezeichnet haben. Details, Authentifizierung und Grenzen: Die REST-API.

expservices

Die Erweiterung expservices, mitgeliefert im Verzeichnis extension/ des Kernels, bietet die Funktionen der Administration als benannte HTTP-Dienste mit einer JSON-Hülle ({"ok":true,"data":...,"meta":{...}}), geblätterten Listen, einem Shell-Client und Python-Beispielen. Ein angemeldeter Benutzer erstellt mit expsession::tokenCreate ein persönliches Token; es wird einmal angezeigt und als Authorization: Bearer <token> gesendet (Entfernte Dienste und Apps, Entfernte Dienste: expservices). Ermitteln Sie mit dem Katalogdienst, was Ihre Installation anbietet, statt aus dem Gedächtnis:

curl -s -H "Authorization: Bearer $EXP_SERVICES_TOKEN" \
  'https://www.example.com/ezjscore/call/expservices::catalog::system?ContentType=json'

Serverfunktionen von ezjscore

Für ein eigenes Frontend auf derselben Website (ein Suchfeld mit Vorschlägen beim Tippen, eine Schaltfläche "mehr laden") ist eine Serverfunktion von ezjscore eine statische PHP-Funktion, registriert in ezjscore.ini, aufgerufen unter /ezjscore/call/... und mit der Session und den Richtlinien der Website als JSON beantwortet (Ajax mit Serverfunktionen von ezjscore, Eine Serverfunktion von Hand).

Eine eigene JSON-View

Braucht ein Client eine Form, die keine vorhandene Schnittstelle liefert, kann eine Modul-View in Ihrer Erweiterung mit JSON statt einer Seite antworten (kein Pagelayout, ein JSON-Körper, der richtige Content-Type) und eine Richtlinienfunktion für den Zugriff deklarieren (Mit JSON oder einer Datei antworten, Module und Views). Bauen Sie die Daten mit Fetch-Funktionen oder der Kernel-API, damit Berechtigungen gelten (Inhalte aus PHP).

Feeds

Der RSS-Export des Kernels veröffentlicht einen Teilbaum als Feed (Setup > RSS), und expservices kann für jeden Teilbaum RSS, Atom oder JSON Feed ausgeben (RSS-Feeds). Verwenden Sie Feeds für News-Listen, die andere Systeme nach Zeitplan abholen.

Die Wahl

BedarfWählen Sie
Eine App liest veröffentlichte InhalteREST v1 oder v2 mit einem persönlichen Schlüssel eines Kontos nur mit Leserechten
Eine App lässt ihre Benutzer sich anmelden und als sie selbst schreibenREST mit OAuth2-Tokens
Ein Werkzeug automatisiert redaktionelle oder administrative Aufgabenexpservices mit einem persönlichen Token
Das JavaScript Ihrer eigenen Website braucht ein paar Dateneine Serverfunktion von ezjscore
Ein Partner braucht genau eine bestimmte JSON-Formeine eigene Modul-View

Muster, die funktionieren

  • Ein Konto je Client, mit einer Rolle, die genau erlaubt, was der Client braucht, und mit Schlüsseln, die ablaufen.
  • Fragen Sie nach Feldern, nicht nach Seiten. Verwenden Sie ResponseGroups und Routen field/<identifier>, um Antworten klein zu halten.
  • Lassen Sie das Rendern von Rich Text auf dem Server, wenn der Client wie die Website aussehen soll: v2 OutputFormat=xhtml.
  • Nur HTTPS: rest.ini [Authentication] RequireHTTPS=enabled auf jeder erreichbaren Installation.
  • Cachen Sie im Client und vermeiden Sie Abfragen im Sekundentakt; Inhaltsänderungen werden veröffentlicht, nicht gestreamt.

Was es nicht gibt

Die REST-Schnittstelle hat noch keine funktionierende Route zum Aktualisieren (sie antwortet mit 501). Exponential 6.0.15 hat einen eigenen GraphQL-Endpunkt, /api/graphql, der Inhalte liest und ändert und aus ist, bis er eingeschaltet wird (Die GraphQL-API). Projekte, die REST v2 und GraphQL der Symfony-Plattform brauchen, verwenden die Linie Exponential Platform, die über die Legacy Bridge neben diesem Kernel laufen kann (Umstieg von eZ Platform oder Ibexa, Legacy Bridge).

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x