Client einrichten

Die JSON/REST API erfordert Logik auf dem Server und dem Client. Den Server gibt das EGOCMS vor. Den Client aber müssen Sie selbst bereitstellen.

Sie können die API verwenden um über eine eigene, EGOCMS fremde Anwendung mit dem EGOCMS zu kommunizieren. Es ist aber auch möglich die API zu nutzen um von einer EGOCMS Installation mit einer anderen zu kommunizieren (z.B. zwischen Redaktions- und Liveserver).

Für diesen Fall bietet das EGOCMS bereits eine in PHP geschriebene Logik für den Client (lib/base/Ego_REST_Client.php). Sie können dieses Skript auch als Vorlage für einen eigenen Client verwenden.

Die Initialisierung des Clients ist denkbar einfach:

require_once('base/Ego_REST_Client.php');
$rest = new Ego_REST_Client('http://localhost/rest/');

Der übergebene Parameter entspricht hierbei der URL zum Zielserver mit dem Pfad zur API (/rest/).

Da für die API eine Authentifizierung notwendig ist, ist der erste Aufruf nach der Initialisierung:

$rest->start('USER_ID', 'TOKEN');

Nun können Sie die Methoden get, put, post und delete verwenden. Dabei ist jeweils der erste Parameter der angesteuerte Pfad und der zweite Parameter zusätzliche Parameter, die der Methode übergeben werden. Beispiele:

  • Einen Mandanten ermitteln:
    $rest->get('demo/de');
  • Eine Seite ermitteln:
    $rest->get('demo/de/10');
  • Eine Seite aktualisieren:
    $rest->put('demo/de/10', array(array('field' => array('title' => 'New title'))));
  • Eine Seite erstellen:
    $new_child = $rest->post('demo/de/10', array(array('name' => 'Created')));
  • Eine Seite löschen:
    $rest->delete('demo/de/12');
wb_incandescent
Die Ego_REST_Client Klasse kümmert sich implizit darum, dass die zu Beginn erhaltene Session ID bei jedem weiteren Aufruf als EGOTEC Cookie weitergereicht wird.

Wenn Sie mit Ihrer Kommunikation abgeschlossen haben, sollten Sie die aktive API Sitzung beenden:

$rest->close();