API JSON Blogger: premiers pas

Important : Nous cesserons de prendre en charge l'API JSON v2.0 le 30 septembre 2024. Pour vous assurer que vos applications qui dépendent de l'API JSON 2.0 continuent de fonctionner, mettez-les à jour vers la dernière version de l'API. Pour obtenir la dernière version, utilisez les liens de la barre de navigation de gauche.

Ce document explique comment commencer à utiliser l'API JSON Blogger.

Sommaire

Introduction

Ce document est destiné aux développeurs qui souhaitent écrire des applications pouvant interagir avec l'API JSON Blogger.

L'API JSON Blogger étend la version 2.0 de l'API Blogger Data. Si vous souhaitez récupérer des données à partir de Blogger au format JSON plutôt qu'au format XML, utilisez l'API JSON Blogger. Si vous souhaitez récupérer des données au format XML, utilisez l'API Blogger Data.

Cette version de l'API JSON Blogger est actuellement en lecture seule. Toutefois, nous prévoyons d'ajouter des fonctionnalités de lecture/écriture, ainsi que d'autres fonctionnalités. N'hésitez pas à demander d'autres fonctionnalités sur le forum d'aide Blogger.

Avant de commencer

Obtenir un compte Google

Assurez-vous d'avoir configuré un compte Google. Nous vous recommandons d'utiliser un compte Google distinct à des fins de développement et de test afin de vous protéger contre la perte accidentelle de données. Si vous disposez déjà d'un compte de test, vous pouvez accéder à l'interface utilisateur de Blogger pour configurer, modifier ou afficher vos données de test.

Familiarisez-vous avec Blogger

Si vous ne connaissez pas les concepts de Blogger, lisez ce document et explorez l'interface utilisateur avant de commencer à coder. Dans ce document, nous partons du principe que vous connaissez Blogger, les concepts de programmation Web et les formats de données Web.

En savoir plus sur l'autorisation des requêtes et l'identification de votre application

Lorsque votre application demande des données privées, cette requête doit être autorisée par un utilisateur authentifié qui a accès à ces données.

Lorsque votre application demande des données publiques, la requête n'a pas besoin d'être autorisée, mais elle doit être accompagnée d'un identifiant, comme une clé API.

Pour savoir comment autoriser les requêtes et utiliser des clés API, consultez la section Autoriser les requêtes et identifier votre application dans le document "Utiliser l'API".

Contexte de l'API JSON Blogger

Concepts Blogger

Blogger repose sur cinq concepts de base:

  • Blogs: concept racine de l'API. Un blog contient des articles et des pages. Il s'agit du conteneur des métadonnées du blog, comme le nom et la description du blog.
  • Posts: un post de blog est l'élément publiable créé par l'auteur du blog. Ces informations doivent être à jour et refléter ce que les auteurs souhaitent publier au monde entier dès maintenant. Il est entendu qu'avec le temps, le contenu des articles de blog vieillit et devient moins pertinent.
  • Commentaires: les commentaires permettent aux personnes autres que l'auteur du post de réagir à ce qu'il a écrit. Tout, des briques aux bouquets.
  • Pages: les pages sont destinées à accueillir du contenu statique, comme des informations biographiques ou les moyens de contacter l'utilisateur. Il s'agit généralement d'informations intemporelles qui ne changent pas très souvent.
  • Utilisateurs: un utilisateur est une personne qui interagit avec Blogger, qu'elle agisse en tant qu'auteur, administrateur ou simple lecteur. Pour les blogs publics, les lecteurs peuvent être anonymes, mais pour les blogs privés, ils doivent être identifiés par Blogger.

Modèle de données de l'API JSON Blogger

Une ressource est une entité de données individuelle disposant d'un identifiant unique. L'API JSON Blogger fonctionne sur cinq types de ressources:

  • Ressource "blogs": représente un blog.
  • Ressource Posts: représente un post. Chaque ressource Posts est un enfant d'une ressource Blogs.
  • Ressource "Comments": représente un commentaire sur un post spécifique. Chaque ressource "Comments" est un enfant d'une ressource "Posts".
  • Ressource "Pages": représente une page statique. Chaque ressource "Pages" est un enfant d'une ressource "Blogs".
  • Ressource "Users": représente un utilisateur non anonyme. Il permet d'identifier l'auteur d'une page, d'un post ou d'un commentaire.
La ressource "Blogs" comporte deux types de ressources enfants : "Pages" et "Posts".
          Une ressource "Posts" peut comporter des ressources enfants "Comments".
Présentation des relations entre les ressources

Le modèle de données de l'API JSON Blogger est basé sur des groupes de ressources, appelés collections:

Collection de blogs
Une collection <span="apicollection">Blogs se compose de tous les blogs auxquels un utilisateur dispose de droits d'accès. Vous pouvez lister les blogs par utilisateur ou en récupérer un seul par ID.</span="apicollection">
Collection "Posts"
Une collection de posts se compose de toutes les ressources de posts d'une ressource de blogs spécifique.
Collection de commentaires
Une collection de commentaires se compose de toutes les ressources de commentaires d'une ressource de posts spécifique.
Collection Pages
Une collection de pages se compose de toutes les ressources de pages d'une ressource de blogs spécifique.
Collection des utilisateurs
Une collection d'utilisateurs comprend toutes les ressources pour les utilisateurs sur Blogger et ne peut donc pas être listée. Un utilisateur peut récupérer sa propre ressource Users (mais pas celle d'un autre utilisateur) par ID ou à l'aide de l'identifiant self.

Opérations de l'API JSON Blogger

Vous pouvez appeler deux méthodes différentes sur les collections et les ressources de l'API JSON Blogger, comme décrit dans le tableau suivant.

Opération Description Mappages HTTP REST
liste Répertorie toutes les ressources d'une collection. GET sur un URI de collection.
get Récupère une ressource spécifique. GET sur un URI de ressource.

Le tableau ci-dessous indique les méthodes compatibles avec chaque type de ressource. Toutes les opérations list (lister) et get (obtenir) sur les blogs privés nécessitent une authentification.

Type de ressource
Méthodes acceptées
list get
Blogs oui oui
Posts oui oui
Commentaires oui oui
Pages oui oui
Utilisateurs non oui

Styles d'appel

Il existe plusieurs façons d'appeler l'API:

REST

REST est un style d'architecture logicielle qui permet de demander et modifier des données de manière pratique et cohérente.

Le terme REST est l'acronyme de REpresentational State Transfer. Dans le contexte des API Google, il désigne l'architecture utilisant des verbes HTTP pour récupérer et modifier les représentations des données stockées par Google.

Dans un système RESTful, les ressources sont stockées dans un datastore. Un client envoie une requête pour que le serveur exécute une action spécifique (par exemple la création, l'extraction, la mise à jour ou la suppression d'une ressource), et le serveur exécute l'action et envoie une réponse, souvent sous la forme d'une représentation de la ressource spécifiée.

Dans les API RESTful de Google, le client spécifie une action à l'aide d'un verbe HTTP comme POST, GET, PUT ou DELETE. La ressource est désignée par un URI unique au format suivant :

https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters

Étant donné que toutes les ressources d'API possèdent des URI uniques accessibles via HTTP, REST permet la mise en cache des données, et son fonctionnement est optimisé pour l'infrastructure distribuée du Web.

Les définitions de méthode figurant dans la documentation du standard HTTP 1.1 peuvent s'avérer utiles, car elles incluent les spécifications pour GET, POST, PUT, et DELETE.

REST dans l'API JSON Blogger

Les opérations Blogger compatibles sont directement mappées aux verbes HTTP REST, comme décrit dans la section Opérations de l'API JSON Blogger.

Les formats spécifiques des URI de l'API Blogger JSON sont les suivants:

https://www.googleapis.com/blogger/v2/users/userId
https://www.googleapis.com/blogger/v2/users/self
https://www.googleapis.com/blogger/v2/users/userId/blogs
https://www.googleapis.com/blogger/v2/users/self/blogs

https://www.googleapis.com/blogger/v2/blogs/blogId/posts
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments
https://www.googleapis.com/blogger/v2/blogs/blogId/posts/postId/comments/commentId
https://www.googleapis.com/blogger/v2/blogs/blogId/pages
https://www.googleapis.com/blogger/v2/blogs/blogId/pages/pageId

La documentation de référence de l'API JSON Blogger explique en détail les URI utilisés et les résultats de chaque opération compatible avec l'API.

Voici quelques exemples de fonctionnement dans l'API JSON Blogger.

Répertoriez les blogs auxquels l'utilisateur authentifié a accès:

GET https://www.googleapis.com/blogger/v2/users/self/blogs?key=YOUR-API-KEY

Obtenez les articles du blog code.blogger.com (dont l'ID de blog est 3213900):

GET https://www.googleapis.com/blogger/v2/blogs/3213900?key=YOUR-API-KEY

REST à partir de JavaScript

Vous pouvez appeler l'API JSON Blogger à l'aide de REST depuis JavaScript, à l'aide du paramètre de requête callback et d'une fonction de rappel. Vous pouvez ainsi écrire des applications enrichies qui affichent des données Blogger sans écrire de code côté serveur.

L'exemple suivant récupère un post du blog code.blogger.com (après avoir remplacé YOUR-API-KEY par votre clé API).

<html>
  <head>
    <title>Blogger JSON 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/v2/blogs/3213900/posts/8398240586497962757?callback=handleResponse&key=YOUR-API-KEY"></script>
  </body>
</html>

Format des données

JSON

JSON (JavaScript Object Notation) est un format de données qui ne dépend pas d'un langage et qui fournit une représentation textuelle simple de structures de données arbitraires. Pour en savoir plus, accédez à json.org.