Comment mettre à jour votre contenu à l’aide des API AEM Assets update-your-content
Dans cette partie du parcours de développement AEM découplé, découvrez comment utiliser l’API REST pour accéder au contenu de vos fragments de contenu et le mettre à jour.
Un peu d’histoire… story-so-far
Dans le document précédent du parcours découplé AEM, Comment accéder à votre contenu à l’aide des API de diffusion AEM, vous avez appris à accéder à votre contenu en mode découplé via l’API AEM GraphQL et vous devriez maintenant :
- Connaître GraphQL dans ses grandes lignes.
- Comprendre le fonctionnement de l’API AEM GraphQL.
- Connaître quelques exemples pratiques de requêtes.
Cet article s’appuie sur ces principes de base afin que vous compreniez comment accéder au contenu découplé existant dans AEM à l’aide de l’API AEM.
Objectif objective
-
Audience : Niveau avancé
-
Objectif : Découvrir comment utiliser l’API REST pour accéder au contenu de vos fragments de contenu et le mettre à jour :
- Présentation de l’API HTTP d’AEM Assets.
- Présentation et description de la prise en charge des fragments de contenu dans l’API.
- Illustration de détails de l’API.
Pourquoi avez-vous besoin de l’API HTTP Assets pour le fragment de contenu why-http-api
À l’étape précédente du parcours en mode découplé, vous avez appris à utiliser l’API AEM GraphQL afin de récupérer votre contenu à l’aide de requêtes.
Alors pourquoi une autre API est-elle nécessaire ?
L’API HTTP Assets vous permet de Lire votre contenu, mais elle vous permet également de Créer, de Mettre à jour et de Supprimer le contenu, des actions qui sont impossibles avec l’API GraphQL.
L’API REST Assets est disponible pour chaque installation prête à l’emploi d’une version récente d’Adobe Experience Manager.
API HTTP Assets assets-http-api
L’API HTTP Assets englobe les éléments suivants :
- API REST Assets
- Prise en charge des fragments de contenu
L’implémentation actuelle de l’API HTTP Assets repose sur le style architectural REST et permet d’accéder au contenu (stocké dans AEM) via les opérations CRUD (Create, Read, Update, Delete) pour créer, lire, mettre à jour, supprimer.
Grâce à ces opérations, l’API permet d’utiliser Adobe Experience Manager en tant que système de gestion de contenu (CMS) découplé en fournissant Content Services à une application frontale JavaScript. Ou toute autre application pouvant exécuter des requêtes HTTP et gérer les réponses JSON. Par exemple, les applications monopages, basées sur la structure ou personnalisées, nécessitent du contenu fourni via l’API HTTP, souvent au format JSON.
API HTTP Assets et fragments de contenu assets-http-api-content-fragments
Les fragments de contenu sont utilisés pour une diffusion en mode découplé. Un fragment de contenu est un type spécial de ressource. Ils permettent d’accéder aux données structurées, telles que les textes, les nombres, les dates, etc.
Utilisation de l’API REST Assets using-aem-assets-rest-api
Accès access
L’API REST Assets utilise le point d’entrée /api/assets
et nécessite le chemin d’accès de la ressource pour y accéder (sans /content/dam
en préfixe).
- Cela signifie que pour accéder à la ressource à l’adresse suivante :
/content/dam/path/to/asset
- Vous devez demander :
/api/assets/path/to/asset
Par exemple, pour accéder à /content/dam/wknd/en/adventures/cycling-tuscany
, demandez /api/assets/wknd/en/adventures/cycling-tuscany.json
/api/assets
ne nécessite pas l’utilisation du sélecteur.model
./content/path/to/page
nécessite l’utilisation du sélecteur.model
.
Opération operation
La méthode HTTP détermine l’opération à exécuter :
- GET : pour récupérer une représentation JSON d’une ressource ou d’un dossier
- POST : pour créer des ressources ou des dossiers
- PUT : pour mettre à jour les propriétés d’une ressource ou d’un dossier
- SUPPRIMER - pour supprimer une ressource ou un dossier.
Le format exact des requêtes prises en charge est défini dans la documentation Référence d’API.
L’utilisation peut varier selon que vous utilisez un environnement d’auteur ou de publication AEM dans votre cas d’utilisation spécifique.
-
Il est vivement recommandé de lier la création à une instance d’auteur (et il n’existe actuellement aucun moyen de répliquer un fragment pour publier à l’aide de cette API).
-
La diffusion est possible à partir des deux, car AEM diffuse le contenu demandé au format JSON uniquement.
-
Le stockage et la diffusion depuis une instance de création AEM doivent suffire pour les applications de bibliothèque de médias situées derrière le pare-feu.
-
Pour une diffusion web en direct, une instance de publication AEM est recommandée.
-
/api
.Lecture/Diffusion read-delivery
Mode d’utilisation :
GET /{cfParentPath}/{cfName}.json
Par exemple :
http://<host>/api/assets/wknd/en/adventures/cycling-tuscany.json
La réponse est un JSON sérialisé avec le contenu structuré comme dans le fragment de contenu. Les références sont diffusées en tant qu’URL de référence.
Deux types d’opérations de lecture sont possibles :
- Lecture d’un fragment de contenu spécifique par chemin, ce qui renvoie la représentation JSON du fragment de contenu.
- Lecture d’un dossier de fragments de contenu par chemin : cela renvoie les représentations JSON de tous les fragments de contenu du dossier.
Créer create
Mode d’utilisation :
POST /{cfParentPath}/{cfName}
Le corps doit contenir une représentation JSON du fragment de contenu à créer, notamment tout contenu initial devant être défini sur les éléments de fragment de contenu. Il est obligatoire de définir la propriété cq:model
, qui doit pointer vers un modèle de fragment de contenu valide. Sans cela, il se produira une erreur. Il est également nécessaire d’ajouter un en-tête Content-Type
, défini sur application/json
.
Mettre à jour update
Mode d’utilisation :
PUT /{cfParentPath}/{cfName}
Le corps doit contenir une représentation JSON de ce qui doit être mis à jour pour le fragment de contenu donné.
Il peut simplement s’agir du titre ou de la description d’un fragment de contenu, d’un élément unique ou de toutes les valeurs et/ou métadonnées d’un élément.
Supprimer delete
Mode d’utilisation :
DELETE /{cfParentPath}/{cfName}
Pour plus d’informations sur l’utilisation de l’API REST d’AEM Assets, vous pouvez accéder aux éléments suivants :
- API HTTP Assets d’Adobe Experience Manager (ressources supplémentaires)
- Prise en charge des fragments de contenu dans l’API HTTP AEM Assets (ressources supplémentaires)
Et après ? whats-next
Maintenant que vous avez terminé cette partie du parcours de développement découplé AEM, vous devriez pouvoir :
- Comprendre les principes de base de l’API HTTP d’AEM Assets.
- Comprendre comment les fragments de contenu sont pris en charge dans cette API.
Poursuivez votre parcours dans AEM découplé en consultant le document Comment mettre en ligne votre application en mode découplé dans lequel vous mettez en ligne votre projet AEM découplé.
Ressources supplémentaires additional-resources
- API HTTP Assets
- API REST de fragments de contenu
- API Adobe Experience Manager Assets – Fragments de contenu
- Utilisation de fragments de contenu
- AEM Core Components
- CORS/AEM expliqué
- Vidéo – Développement pour CORS et AEM
- Présentation d’AEM en tant que CMS découplé
- Le Portail de développement AEM
- Tutoriels pour Headless dans AEM