Mobile Blogging-App mit DreamFactory, WordPress und Mailgun, Teil 1
Die WordPress-REST-API verstehen
Wie zuvor bereits beschrieben, wird die Anwendung mblog zwei externe Dienste verwenden: WordPress und Mailgun. In diesem Abschnitt werden wir die WordPress-REST-API konfigurieren und testen und sie dann mit Ihrer DSP verbinden.
REST-Unterstützung fügen Sie in Ihrem WordPress-Blog am einfachsten mit dem JSON-REST-API-Plugin von WordPress hinzu. Beginnen Sie mit dem Download der Plugins WP-API und Basic-Auth aus dem Github Repository des Projektes. Dann installieren Sie sie, indem Sie sich auf Ihrem WordPress-Blog als Administrator anmelden, zum Abschnitt navigieren und sie hochladen. Achten Sie darauf, den Link anzuklicken, um beide Plugins zu aktivieren. Sie sollten sie jetzt in der Liste der installierten Plugins als aktiviert sehen können.
Die JSON REST API von WordPress funktioniert, indem GET-, PUT-, POST- und DELETE-Anfragen für spezielle Ressourcen über HTTP angenommen werden und dann die entsprechenden Ressourcen des WordPress-Blogs erstellt, bearbeitet, hinzufügt oder gelöscht werden. Zu den unterstützten Ressourcen gehören Posts, Benutzer, Taxonomien, Revisionen und vieles mehr; Daten werden im JSON-Format empfangen und zurückgegeben.
Um zu sehen, wie die JSON-REST-API funktioniert, starten Sie Ihren REST-Client und senden eine nicht authentifizierte GET-Anfrage an http://wordpress.localhost/wp-json/ (vergessen Sie nicht, wordpress.localhost durch den tatsächlichen Namen für Ihren WordPress-Host zu ersetzen). Wenn alles gut läuft, sollte dies grundlegende Metadaten der Site sowie eine Liste der unterstützten Routen, wie unten gezeigt, zurückgegeben:
Um einen bestimmten Beitrag abzurufen, senden Sie eine nicht authentifizierte GET-Anforderung an http://wordpress.localhost/wp-json/posts/1. Dies sollte den Inhalt des WordPress-Post mit der Id 1, zurückgeben, wie oben rechts dargestellt.
Nun zu etwas Interessanterem: das Erstellen eines neuen Beitrags mittels der REST-API. Hierzu müssen Sie eine authentifizierte POST-Anforderung an den Endpunkt http://wordpress.localhost/wp-json/posts senden und ein JSON-Dokument mit dem Post-Inhalt in Ihrem POST-Body einfügen, wie unten dargestellt. HTTP-Standardauthentifizierung (mit Ihrem WordPress-Administrator-Benutzernamen und Passwort) ist notwendig, damit Ihre Anfrage erfolgreich bearbeitet wird.
Tipp: Wenn Sie bei der Ausführung Ihrer POST-Anfrage eine 403 Forbidden
-Antwort mit der Meldung erhalten »Tut mir leid, Sie sind nicht berechtigt auf dieser Website zu veröffentlichen«, versuchen Sie zunächst, sich vom WordPress-Dashboard abzumelden.
Wenn die Anfrage erfolgreich war, wird der neue Beitrag sofort auf der Titelseite Ihres Blogs angezeigt.