Uw inhoud bijwerken via AEM Assets API's update-your-content
In dit deel van de AEM Zwaardeloze Reis van de Ontwikkelaar,leert hoe te om REST API te gebruiken om tot de inhoud van uw Fragments van de Inhoud toegang te hebben en bij te werken.
Het verhaal tot nu toe story-so-far
In het vorige document van de AEM headless reis, hoe te om tot Uw Inhoud via AEM levering APIs toegang te hebbenleerde u hoe te om tot uw inhoud zonder kop in AEM via GraphQL API toegang te hebben en u zou nu moeten:
- 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 te om REST API te gebruiken om tot de inhoud van uw Fragments van de Inhoud toegang te hebben 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 Assets HTTP API voor inhoudsfragmenten nodig? 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?
De HTTP API van Assets laat u lezen uw inhoud, maar het laat u ook creëren, Update en schrapt inhoud - acties die niet met GraphQL API mogelijk zijn.
De Assets REST-API is beschikbaar voor elke installatie van een recente Adobe Experience Manager-versie die buiten de box valt.
ASSETS HTTP API assets-http-api
De Assets HTTP-API omvat:
- ASSETS REST API
- inclusief ondersteuning voor inhoudsfragmenten
De huidige implementatie van Assets HTTP API is gebaseerd op de REST architecturale stijl en laat u toe om tot inhoud toegang te hebben (die in AEM wordt opgeslagen) via CRUD verrichtingen (creeer, Gelezen, Update, Schrapping).
Met deze bewerking kunt u met de API Adobe Experience Manager 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.
Assets HTTP API- en inhoudsfragmenten assets-http-api-content-fragments
Inhoudsfragmenten worden gebruikt voor levering zonder kop en een inhoudsfragment is een speciaal type element. Ze worden gebruikt om onder andere toegang te krijgen tot gestructureerde gegevens, zoals teksten, getallen, datums.
De Assets REST API gebruiken using-aem-assets-rest-api
Toegang access
De Assets REST-API gebruikt het /api/assets
-eindpunt en vereist het pad van het element om het te openen (zonder de regelafstand /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
Als u bijvoorbeeld toegang wilt krijgen tot /content/dam/wknd/en/adventures/cycling-tuscany
, vraagt u om /api/assets/wknd/en/adventures/cycling-tuscany.json
/api/assets
nodig niet het gebruik van.model
selecteur./content/path/to/page
vereist het gebruik van.model
selecteur.
Bewerking operation
De HTTP-methode bepaalt de uit te voeren bewerking:
- GET - om een vertegenwoordiging JSON van activa of een omslag terug te winnen
- POST - om nieuwe activa of omslagen te creëren
- PUT - om de eigenschappen van een activa of een omslag bij te werken
- DELETE - om activa 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
blokkeren.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 eigenschap cq:model
in te stellen en deze moet verwijzen naar een geldig inhoudsfragmentmodel. Als u dit niet doet, treedt er een fout op. U moet ook een koptekst Content-Type
toevoegen 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 gebeurt via:
DELETE /{cfParentPath}/{cfName}
Voor meer informatie over het gebruik van de AEM Assets REST API kunt u verwijzen naar:
- 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 zou uw AEM headless reis door het document te herzien moeten voortzetten hoe te met Uw Zwaarloze Toepassinggaan waar u eigenlijk uw AEM Zwaardeloos project neemt levend!
Aanvullende bronnen additional-resources
- ASSETS HTTP API
- Content Fragments REST API
- Adobe Experience Manager Assets API - de Fragmenten van de Inhoud
- Werken met inhoudsfragmenten
- AEM de Componenten van de Kern
- verklaarde CORS/AEM
- Video - het Ontwikkelen voor CORS met AEM
- Een Inleiding aan AEM als Zwaartepunt CMS
- Het AEM Portaal van de Ontwikkelaar
- Tutorials voor Zwaartepunt in AEM