Headless Content Delivery using Content Fragments with GraphQL headless-content-delivery-using-content-fragments-with-graphQL
Med Adobe Experience Manager (AEM) kan du använda innehållsfragment tillsammans med det AEM GraphQL-API:t (en anpassad implementering som bygger på GraphQL-standard) för att leverera strukturerat innehåll som ska användas i dina program. Möjligheten att anpassa en enda API-fråga gör att du kan hämta och leverera det specifika innehåll som du vill ha/behöver återge (som svar på en enskild API-fråga).
Headless CMS headless-cms
Ett CMS-system (Headless Content Management System) är:
-
"Ett headless content management-system, eller headless CMS, är ett CMS-system (content management system) som byggs från grunden som en innehållsdatabas som gör innehåll tillgängligt via ett API för visning på valfri enhet.
Se Wikipedia.
När det gäller utveckling av innehållsfragment i AEM innebär detta att:
-
Du kan använda Innehållsfragment för att skapa innehåll som inte primärt är avsett att publiceras direkt (1:1) på formaterade sidor.
-
Innehållet i dina innehållsfragment kommer att struktureras på ett förutbestämt sätt, enligt modellerna för innehållsfragment. Detta förenklar åtkomsten för dina program, som kommer att bearbeta innehållet ytterligare.
GraphQL - en översikt graphql-overview
GraphQL är:
-
"…ett frågespråk för API:er och en körningsmiljö för att utföra dessa frågor med dina befintliga data.".
Se GraphQL.org
Med AEM GraphQL API kan du utföra (komplexa) frågor på dina innehållsfragment, där varje fråga följer en viss modelltyp. Det returnerade innehållet kan sedan användas av dina program.
AEM GRAPHQL API aem-graphql-api
För Adobe Experience har en anpassad implementering av GraphQL standard-API utvecklats. Mer information finns i AEM GraphQL API för användning med innehållsfragment.
Implementeringen av AEM GraphQL API baseras på GraphQL Java-bibliotek.
Innehållsfragment för användning med AEM GraphQL API content-fragments-use-with-aem-graphql-api
Innehållsfragment kan användas som bas för GraphQL för AEM frågor som:
- Med dem kan du utforma, skapa, strukturera och publicera sidoberoende innehåll.
- Modeller för innehållsfragment tillhandahåller den struktur som krävs med hjälp av definierade datatyper.
- Fragmentreferensen, som är tillgänglig när du definierar en modell, kan användas för att definiera ytterligare lager i strukturen.
Innehållsfragment content-fragments
Innehållsfragment:
-
Innehåller strukturerat innehåll.
-
De baseras på en Content Fragment Model som fördefinierar strukturen för det resulterande fragmentet.
Modeller för innehållsfragment content-fragments-models
Dessa modeller för innehållsfragment:
-
Används för att generera scheman, en gång Enabled.
-
Ange de datatyper och fält som krävs för GraphQL. De ser till att programmet bara begär det som är möjligt och får det som förväntas.
-
Datatypen Fragmentreferenser kan användas i modellen för att referera till ett annat innehållsfragment, vilket innebär att ytterligare strukturnivåer införs.
Fragmentreferenser fragment-references
-
Är av särskilt intresse tillsammans med GraphQL.
-
Är en specifik datatyp som kan användas när en innehållsfragmentmodell definieras.
-
Refererar till ett annat fragment, beroende på en viss innehållsfragmentmodell.
-
Gör att du kan hämta strukturerade data.
- När det definieras som en multifeed kan flera delfragment refereras (hämtas) av det primära fragmentet.
JSON Preview json-preview
Om du vill ha hjälp med att designa och utveckla dina modeller för innehållsfragment kan du förhandsgranska JSON-utdata.
Lära sig använda GraphQL med AEM - exempelinnehåll och frågor learn-graphql-with-aem-sample-content-queries
Se Lära dig att använda GraphQL med AEM - exempelinnehåll och frågor för en introduktion till att använda AEM-API:t för GraphQL.
Självstudiekurs - Komma igång med AEM Headless och GraphQL
Söker du en praktisk självstudiekurs? Ta en titt på Komma igång med AEM Headless och GraphQL - en komplett självstudiekurs som visar hur du bygger upp och exponerar innehåll med AEM GraphQL API:er och som används av en extern app i ett headless CMS-scenario.