Uw inhoud bijwerken via AEM Assets API's update-your-content
In dit deel van het AEM Headless Developer Journey, Leer hoe u de REST API kunt gebruiken om de inhoud van de Content Fragments te openen en bij te werken.
Het verhaal tot nu toe story-so-far
In het vorige document van de AEM zonder kop: Toegang tot uw inhoud via AEM levering-API's U hebt geleerd hoe u toegang krijgt tot inhoud zonder kop in AEM via de AEM GraphQL API. Nu moet u:
- Een goed begrip van GraphQL.
- Begrijp hoe de AEM GraphQL API werkt.
- Begrijp sommige praktische steekproefvragen.
Dit artikel bouwt verder op deze basisbeginselen, zodat u begrijpt hoe u bestaande inhoud zonder kop in AEM kunt bijwerken via de REST API.
Doelstelling objective
-
Publiek: Geavanceerd
-
Doelstelling: Leer hoe u de REST API kunt gebruiken om de inhoud van de inhoudsfragmenten te openen en bij te werken:
- Introduceer de AEM Assets HTTP API.
- Introduceer en bespreek de ondersteuning voor inhoudsfragmenten in de API.
- Details van de API illustreren.
Waarom hebt u de HTTP-API Middelen nodig voor inhoudsfragmenten why-http-api
In de vorige fase van de Headless Journey hebt u geleerd hoe u de AEM GraphQL API kunt gebruiken om uw inhoud op te halen met behulp van query's.
Waarom is er dus nog een API nodig?
Met de HTTP-API voor middelen kunt u Lezen uw inhoud, maar het laat u ook Maken, Bijwerken en Verwijderen content - acties die niet mogelijk zijn met de GraphQL API.
De REST-API voor middelen is beschikbaar voor elke installatie van een recente Adobe Experience Manager as a Cloud Service-versie die buiten de box valt.
Elementen HTTP-API assets-http-api
De HTTP-API voor Middelen omvat:
- REST-API voor middelen
- inclusief ondersteuning voor inhoudsfragmenten
De huidige implementatie van de HTTP-API voor middelen is gebaseerd op de REST architecturale stijl en biedt toegang tot inhoud (opgeslagen in AEM) via CRUD bewerkingen (Maken, lezen, bijwerken, verwijderen).
Met deze bewerkingen kunt u met de API Adobe Experience Manager as a Cloud Service gebruiken als een headless CMS (Content Management System) door Content Services aan te bieden aan een JavaScript front-end toepassing. Of elke andere toepassing die HTTP-aanvragen kan uitvoeren en JSON-reacties kan verwerken. Toepassingen voor één pagina (SPA), die zijn gebaseerd op een framework of die zijn aangepast, vereisen bijvoorbeeld inhoud die via een API wordt aangeboden, vaak in JSON-indeling.
Elementen HTTP API en inhoudsfragmenten assets-http-api-content-fragments
Inhoudsfragmenten worden gebruikt voor levering zonder kop en een inhoudsfragment is een speciaal type element. Zij worden gebruikt om tot gestructureerde gegevens, zoals teksten, aantallen, data toegang te hebben.
De REST-API voor middelen gebruiken using-aem-assets-rest-api
Toegang access
De REST-API voor middelen gebruikt de /api/assets
eindpunt en vereist de weg van de activa om tot het toegang te hebben (zonder het leiden /content/dam
).
- Dit betekent dat toegang tot het actief moet worden verkregen tegen:
/content/dam/path/to/asset
- U moet een aanvraag indienen:
/api/assets/path/to/asset
Bijvoorbeeld om /content/dam/wknd/en/adventures/cycling-tuscany
, verzoek /api/assets/wknd/en/adventures/cycling-tuscany.json
/api/assets
niet het gebruik van de.model
kiezer./content/path/to/page
doet het gebruik van de.model
kiezer.
Bewerking operation
De HTTP-methode bepaalt de uit te voeren bewerking:
- GET - om een JSON-representatie van een middel of een map op te halen
- POST - om nieuwe elementen of mappen te maken
- PUT - om de eigenschappen van een middel of een omslag bij te werken
- DELETE - om een middel of een omslag te schrappen
De exacte indeling van ondersteunde aanvragen wordt gedefinieerd in de API-naslagdocumentatie.
Het gebruik kan verschillen afhankelijk van of u een AEM auteur of publicatieomgeving gebruikt, samen met uw specifieke gebruiksscenario.
-
Het wordt sterk aanbevolen dat het maken is gebonden aan een instantie van de auteur (en momenteel is er geen manier om een fragment te repliceren om te publiceren met behulp van deze API).
-
De levering is mogelijk van beide, aangezien AEM gevraagde inhoud in formaat slechts JSON dient.
-
Opslag en levering vanuit een AEM auteur-instantie zouden voldoende moeten zijn voor toepassingen achter de firewall, in de mediabibliotheek.
-
Voor live webweergave wordt een AEM-publicatie-instantie aanbevolen.
-
/api
.Lezen/Levering read-delivery
Gebruik gebeurt via:
GET /{cfParentPath}/{cfName}.json
Bijvoorbeeld:
http://<host>/api/assets/wknd/en/adventures/cycling-tuscany.json
De reactie is geserialiseerd met JSON met de inhoud gestructureerd zoals in het inhoudsfragment. Referenties worden als referentie-URL's geleverd.
Er zijn twee typen leesbewerkingen mogelijk:
- Als u een specifiek inhoudsfragment leest per pad, wordt hiermee de JSON-representatie van het inhoudsfragment geretourneerd.
- Een map met inhoudsfragmenten lezen op pad: hiermee worden de JSON-representaties van alle inhoudsfragmenten in de map geretourneerd.
Maken create
Gebruik gebeurt via:
POST /{cfParentPath}/{cfName}
De hoofdtekst moet een JSON-representatie bevatten van het inhoudsfragment dat moet worden gemaakt, inclusief de initiële inhoud die moet worden ingesteld op de elementen van het inhoudsfragment. Het is verplicht de cq:model
en moet verwijzen naar een geldig inhoudsfragmentmodel. Als u dit niet doet, treedt er een fout op. Er moet ook een koptekst worden toegevoegd Content-Type
die is ingesteld op application/json
.
Bijwerken update
Gebruik is via
PUT /{cfParentPath}/{cfName}
De hoofdtekst moet een JSON-representatie bevatten van wat voor het opgegeven inhoudsfragment moet worden bijgewerkt.
Dit kan gewoon de titel of beschrijving zijn van een inhoudsfragment, of één element, of alle elementwaarden en/of metagegevens.
Verwijderen delete
Gebruik is als volgt:
DELETE /{cfParentPath}/{cfName}
Raadpleeg de volgende bronnen voor meer informatie over het gebruik van de AEM Assets REST API:
- Adobe Experience Manager Assets HTTP API (extra bronnen)
- Ondersteuning voor inhoudsfragmenten in AEM Assets HTTP API (extra bronnen)
Volgende functies whats-next
Nu u dit deel van de AEM Headless Developer Journey hebt voltooid, moet u:
- Begrijp de basisbeginselen van de AEM Assets HTTP API.
- Begrijp hoe de Fragments van de Inhoud in deze API worden gesteund.
U moet uw AEM zonder kop voortzetten door het document opnieuw te bekijken Alles bij elkaar plaatsen - uw app en uw inhoud in AEM headless waar u vertrouwd zult raken met de AEM architectuurgrondbeginselen en hulpmiddelen u moet gebruiken om uw toepassing samen te stellen.
Aanvullende bronnen additional-resources
- Adobe Experience Manager as a Cloud Service API's
- Elementen HTTP-API
- Content Fragments REST API
- Adobe Experience Manager Assets API - Inhoudsfragmenten
- Werken met inhoudsfragmenten
- AEM kerncomponenten
- CORS/AEM toegelicht
- Video - Ontwikkelen voor CORS met AEM
- Inleiding tot AEM als een headless CMS
- AEM Developer Portal
- Tutorials voor headless in AEM