O Capítulo 4 do tutorial AEM Headless aborda o papel dos modelos editáveis AEM no contexto dos serviços de conteúdo AEM. Modelos editáveis são usados para definir a estrutura de conteúdo JSON que o AEM Content Services expõe aos clientes por meio da composição de componentes AEM habilitados para o Content Services.
Modelos editáveis AEM são usados para definir os pontos de extremidade HTTP que são acessados para expor o conteúdo do Evento como JSON.
Tradicionalmente, os modelos editáveis com AEM são usados para definir páginas da Web, no entanto, esse uso é simplesmente convencional. Modelos editáveis podem ser usados para compor qualquer conjunto de conteúdo; como esse conteúdo é acessado: como um HTML em um navegador, como JSON consumido pelo JavaScript (editor de SPA do AEM) ou um aplicativo móvel é uma função de como essa página é solicitada.
No AEM Content Services, os modelos editáveis são usados para definir como os dados JSON são expostos.
Para o WKND Mobile Criaremos um único Modelo editável usado para direcionar um único endpoint de API. Embora este exemplo seja simples de ilustrar os conceitos de AEM Headless, você pode criar várias páginas (ou pontos de extremidade), cada uma expondo diferentes conjuntos de conteúdo para criar uma API mais complexa e mais bem organizada.
Para entender como compor nosso endpoint de API e entender qual conteúdo deve ser exposto ao nosso WKND Mobile App, vamos rever o design.
Como podemos ver, temos três conjuntos lógicos de conteúdo para fornecer ao aplicativo móvel.
Para fazer isso, podemos mapear esses requisitos para componentes AEM (e, no nosso caso, AEM WCM Componentes principais) para expor o conteúdo necessário como JSON.
Para suportar a exportação JSON de páginas e componentes do serviço de conteúdo AEM, as páginas e os componentes devem derivar dos componentes principais do WCM no AEM.
Componentes principais do WCM no AEM têm funcionalidade integrada para suportar um esquema JSON normalizado de Páginas e Componentes exportados. Todos os componentes do WKND Mobile usados neste tutorial (Página, Imagem, Texto e Lista de fragmentos de conteúdo) são derivados dos Componentes principais do WCM no AEM.
Navegue até Ferramentas > Geral > Modelos >WKND Mobile.
Crie o Events API modelo:
Primeiro, permitimos os três componentes do AEM identificados de que precisamos para modelar o conteúdo editando o Política da Raiz Contêiner de layout. Assegure a Estrutura estiver ativo, selecione a variável Layout Container [Root] e toque no Política botão.
Em Propriedades > Componentes permitidos pesquisar WKND Mobile. Permitir os seguintes componentes do WKND Mobile grupo de componentes para que possam ser usados no Events API.
WKND Mobile > Image
WKND Mobile > Text
WKND Mobile > Content Fragment List
Toque no Concluído marca de seleção no canto superior direito ao concluir.
Atualizar a janela do navegador para ver as novas Componentes permitidos no painel esquerdo.
No localizador Componentes no painel à esquerda, arraste os seguintes Componentes AEM:
Para cada um dos componentes acima, selecione-os e pressione a tecla desbloquear botão.
No entanto, assegurar a contêiner de layout é bloqueado para impedir que outros componentes sejam adicionados ou que esses três componentes sejam removidos.
Toque Informações da página > Exibir no Administrador para retornar ao WKND Mobile listagem de modelos. Selecione o recém-criado Events API modelo e toque em Ativar na barra de ação superior.
Observe que os componentes usados para exibir o conteúdo são adicionados ao próprio modelo e bloqueados. Isso permite que os autores editem os componentes predefinidos, mas não adicionem ou removam componentes arbitrariamente, pois alterar a própria API pode quebrar as suposições em torno da estrutura JSON e quebrar aplicativos de consumo. Todas as APIs precisam ser estáveis.
Como opção, instale o com.adobe.aem.guides.wknd-mobile.content.chapter-4.zip pacote de conteúdo no AEM Author via Gerenciador de pacotes AEM. Este pacote contém as configurações e o conteúdo descritos neste e nos capítulos anteriores do tutorial.