In diesem Dokument werden die ersten Schritte mit der Blogger API erläutert.
Hinweis
Erstellen Sie sich ein Google-Konto
Sie müssen ein Google-Konto eingerichtet haben. Wir empfehlen, für Entwicklungs- und Testzwecke ein separates Google-Konto zu verwenden, um sich vor Datenverlusten zu schützen. Wenn Sie bereits ein Testkonto haben, sind Sie startklar. Sie können die Benutzeroberfläche von Blogger aufrufen, um Ihre Testdaten einzurichten, zu bearbeiten oder aufzurufen.
Blogger kennenlernen
Wenn Sie mit den Konzepten von Blogger nicht vertraut sind, lesen Sie dieses Dokument und experimentieren Sie mit der Benutzeroberfläche, bevor Sie mit dem Programmieren beginnen. In diesem Dokument wird davon ausgegangen, dass Sie mit Blogger, Webprogrammierungskonzepten und Webdatenformaten vertraut sind.
Weitere Informationen zum Autorisieren von Anfragen und zum Identifizieren Ihrer Anwendung
Wenn Ihre Anwendung private Daten anfordert, muss die Anfrage von einem authentifizierten Nutzer autorisiert werden, der Zugriff auf diese Daten hat.
Wenn Ihre Anwendung öffentliche Daten anfordert, muss die Anfrage nicht autorisiert werden. Sie benötigt jedoch eine Kennung, z. B. einen API-Schlüssel.
Informationen zum Autorisieren von Anfragen und zum Verwenden von API-Schlüsseln finden Sie im Dokument "API verwenden" unter Anfragen autorisieren und Ihre Anwendung identifizieren.
Blogger API-Hintergrund
Blogger-Konzepte
Blogger beruht auf fünf Grundkonzepten:
- Blogs: Das Grundkonzept der API. Ein Blog besteht aus Posts und Seiten. Dies ist der Container für Blog-Meta-Informationen wie Blogname und Beschreibung.
- Posts: Ein Blogpost ist das Element, das veröffentlicht werden kann, das der Autor des Blogs erstellt hat. Diese Informationen müssen zeitnah erfolgen und widerspiegeln, was die Autoren jetzt weltweit veröffentlichen möchten. Es ist uns bewusst, dass die Inhalte von Blogposts mit der Zeit älter und weniger relevant werden.
- Kommentare: Ein Kommentar ist der Ort, an dem andere Personen als der Autor des Blogposts auf das, was der Autor geschrieben hat, reagieren. Alles von Steinen bis hin zu Blumensträußen.
- Seiten: Eine Seite ist ein Ort für statische Inhalte wie biografische Informationen oder Kontaktmöglichkeiten mit dem Nutzer. Dabei handelt es sich in der Regel um zeitlose Informationen, die sich nur selten ändern.
- Nutzer: Ein Nutzer ist jemand, der mit Blogger interagiert, sei es als Autor, Administrator oder einfach nur als Leser. Bei öffentlichen Blogs können Leser anonym sein. In privaten Blogs muss ein Leser jedoch von Blogger identifiziert werden.
Blogger API-Datenmodell
Eine Ressource ist ein individuelles Datenobjekt mit einer eindeutigen ID. Die Blogger JSON API wird mit fünf Ressourcentypen ausgeführt:
- Blogressource: Steht für einen Blog
- Posts-Ressource: Stellt einen Post dar. Jede Post-Ressource ist einer Blog-Ressource untergeordnet.
- Kommentarressource: Stellt einen Kommentar zu einem bestimmten Beitrag dar. Jede Kommentarressource ist einer Beitragsressource untergeordnet.
- Seitenressource: Stellt eine statische Seite dar. Jede Seitenressource ist einer Blogressource untergeordnet.
- Nutzerressource: Stellt einen nicht anonymen Nutzer dar. Damit wird der Autor einer Seite, eines Beitrags oder eines Kommentars angegeben.
Das Blogger API-Datenmodell basiert auf Gruppen von Ressourcen, die als Sammlungen bezeichnet werden:
- Blogssammlung
- Eine <span="apicollection">Blogsammlung umfasst alle Blogs, auf die ein Nutzer Zugriff hat. Sie können Blogs nach Nutzer auflisten oder einen einzelnen Blog nach ID abrufen.</span="apicollection">
- Sammlung von Beiträgen
- Eine Beitragssammlung besteht aus allen Ressourcen für Beiträge einer bestimmten Blogressource.
- Kommentarsammlung
- Eine Kommentarsammlung besteht aus allen Kommentarressourcen einer bestimmten Beitragsressource.
- Seitensammlung
- Eine Seitensammlung besteht aus allen Seitenressourcen einer bestimmten Blogressource.
- Sammlung „Nutzer“
- Eine Nutzersammlung besteht aus allen Nutzerressourcen auf Blogger und kann daher nicht aufgelistet werden. Ein Nutzer kann seine eigene Nutzerressource (jedoch keines anderer) über die ID oder die Kennzeichnung
self
abrufen.
Blogger API-Vorgänge
In der Blogger API kannst du verschiedene Methoden für Sammlungen und Ressourcen aufrufen, wie in der folgenden Tabelle beschrieben.
Vorgang | Beschreibung | REST-HTTP-Zuordnungen |
---|---|---|
list | Listet alle Ressourcen in einer Sammlung auf. | GET für einen Sammlungs-URI. |
get | Ruft eine bestimmte Ressource ab. | GET für einen Ressourcen-URI. |
getByUrl | Ruft eine Ressource ab und sucht anhand der URL nach der Ressource. | GET durch die als Parameter übergebene URL. |
getByPath | Ruft eine Ressource ab, indem sie über ihren Pfad nachgeschlagen wird. | GET durch den Pfad, der als Parameter übergeben wird. |
listByUser | Listet Ressourcen auf, die einem Nutzer gehören. | GET für eine nutzereigene Sammlung |
search | Suchen Sie anhand eines Abfrageparameters nach Ressourcen. | GET für eine Such-URL, wobei die Suchanfrage als Parameter übergeben wird. |
insert | Erstellen Sie eine Ressource in einer Sammlung. | POST für einen Sammlungs-URI. |
delete | Löscht eine Ressource. | DELETE für einen Ressourcen-URI. |
patch | Aktualisieren Sie eine Ressource mit der Patch-Semantik. | PATCH für einen Ressourcen-URI. |
Update | Ressource aktualisieren | PUT für einen Ressourcen-URI. |
Die folgende Tabelle zeigt, welche Methoden von jedem Ressourcentyp unterstützt werden. Alle list- und get-Vorgänge in privaten Blogs erfordern eine Authentifizierung.
Ressourcentyp |
Unterstützte Methoden |
|||||||||
---|---|---|---|---|---|---|---|---|---|---|
Liste | get | getByUrl | getByPath | listByUser | suchen | einfügen | Löschen | patchen | Update | |
Blogs | nein | Ja | Ja | nein | Ja | nein | nein | nein | nein | nein |
Beiträge | Ja | Ja | nein | Ja | nein | Ja | Ja | Ja | Ja | Ja |
Kommentare | Ja | Ja | nein | nein | nein | nein | nein | nein | nein | nein |
Seiten | Ja | Ja | nein | nein | nein | nein | nein | nein | nein | nein |
Nutzer | nein | Ja | nein | nein | nein | nein | nein | nein | nein | nein |
Aufrufstile
Es gibt mehrere Möglichkeiten, die API aufzurufen:
- Direkt über REST oder über JavaScript (kein serverseitiger Code erforderlich)
- Clientbibliotheken verwenden
REST
REST ist eine Art Softwarearchitektur, die einen bequemen und einheitlichen Ansatz zur Abfrage und Bearbeitung von Daten bietet.
REST steht für "Representational State Transfer". Im Kontext der Google APIs ist damit die Verwendung von HTTP-Verben gemeint, um Darstellungen von Daten, die bei Google gespeichert sind, abzufragen und zu bearbeiten.
In einem als "RESTful" bezeichneten System werden Ressourcen in einem Datenspeicher abgelegt; ein Client sendet eine Aufforderung, der Server möge eine bestimmte Aktion ausführen (z. B. eine Ressource erstellen, abfragen, aktualisieren oder löschen), und der Server führt die Aktion aus und sendet eine Antwort, oft in Form einer Darstellung der angegebenen Ressource.
In den RESTful APIs von Google gibt der Client eine Aktion mit einem HTTP-Verb wie POST
, GET
, PUT
oder DELETE
an. Eine Ressource wird durch einen global eindeutigen URI im folgenden Format angegeben:
https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters
Weil alle API-Ressourcen eindeutige, über HTTP zugängliche URIs haben, ermöglicht REST das Caching von Daten und ist optimal geeignet, mit der verteilten Infrastruktur des Webs zu arbeiten.
Dafür können die Methodendefinitionen in der Dokumentation der HTTP 1.1-Standards hilfreich sein. Hier finden Sie auch die Spezifikationen für GET
, POST
, PUT
und DELETE
.
REST in der Blogger API
Die unterstützten Blogger-Vorgänge lassen sich direkt den REST-HTTP-Verben zuordnen. Eine Beschreibung hierzu finden Sie unter Blogger API-Vorgänge.
Das spezifische Format für Blogger API-URIs lautet:
https://www.googleapis.com/blogger/v3/users/userId https://www.googleapis.com/blogger/v3/users/self https://www.googleapis.com/blogger/v3/users/userId/blogs https://www.googleapis.com/blogger/v3/users/self/blogs https://www.googleapis.com/blogger/v3/blogs/blogId https://www.googleapis.com/blogger/v3/blogs/byurl https://www.googleapis.com/blogger/v3/blogs/blogId/posts https://www.googleapis.com/blogger/v3/blogs/blogId/posts/bypath https://www.googleapis.com/blogger/v3/blogs/blogId/posts/search https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId/comments https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId/comments/commentId https://www.googleapis.com/blogger/v3/blogs/blogId/pages https://www.googleapis.com/blogger/v3/blogs/blogId/pages/pageId
Die vollständige Erläuterung der verwendeten URIs und die Ergebnisse für jeden unterstützten Vorgang in der API finden Sie in der Blogger API-Referenz.
Beispiele
Listen Sie die Blogs auf, für die der authentifizierte Nutzer Zugriffsrechte hat:
GET https://www.googleapis.com/blogger/v3/users/self/blogs?key=YOUR-API-KEY
Rufen Sie die Posts im Blog code.blogger.com mit der Blog-ID 3213900 ab:
GET https://www.googleapis.com/blogger/v3/blogs/3213900?key=YOUR-API-KEY
REST aus JavaScript
Du kannst die Blogger API über JavaScript mithilfe des Abfrageparameters callback
und durch Bereitstellen einer Callback-Funktion aufrufen.
Wenn der Browser das Skript lädt, wird die Callback-Funktion ausgeführt und die Antwort an die Callback-Funktion übergeben. Auf diese Weise kannst du umfangreiche Anwendungen schreiben, die Blogger-Daten anzeigen, ohne serverseitigen Code zu benötigen.
Im folgenden Beispiel wird ein Post aus dem Blog code.blogger.com abgerufen, nachdem du YOUR-API-KEY durch deinen API-Schlüssel ersetzt hast.
<html> <head> <title>Blogger API Example</title> </head> <body> <div id="content"></div> <script> function handleResponse(response) { document.getElementById("content").innerHTML += "<h1>" + response.title + "</h1>" + response.content; } </script> <script src="https://www.googleapis.com/blogger/v3/blogs/3213900/posts/8398240586497962757?callback=handleResponse&key=YOUR-API-KEY"></script> </body> </html>
Datenformat
JavaScript Object Notation
JSON (JavaScript Object Notation) ist ein gängiges sprachunabhängiges Datenformat, das eine einfache Textdarstellung beliebiger Datenstrukturen bietet. Weitere Informationen finden Sie unter json.org.