Configuração do desenvolvimento local
Saiba como configurar um ambiente de desenvolvimento local para editar o conteúdo de um aplicativo React usando o AEM Universal Editor.
Pré-requisitos
Os seguintes elementos são necessários para seguir este tutorial:
-
Habilidades básicas em HTML e JavaScript.
-
As seguintes ferramentas devem ser instaladas localmente:
- Node.js
- Git
- Um editor de código IDE, como o Visual Studio Code
-
Baixe e instale o seguinte:
- AEM as a Cloud Service SDK: contém o Quickstart Jar usado para executar o AEM Author e Publish localmente para fins de desenvolvimento.
- Serviço do Universal Editor: uma cópia local do serviço do Universal Editor, ela tem um subconjunto de recursos e pode ser baixada do Portal de Distribuição de Software.
- local-ssl-proxy: um proxy HTTP SSL local simples usando um certificado autoassinado para desenvolvimento local. O Editor universal do AEM requer o URL HTTPS do aplicativo React para carregá-lo no editor.
Configuração local
Siga as etapas abaixo para configurar o ambiente de desenvolvimento local:
SDK do AEM
Para fornecer o conteúdo para o aplicativo WKND Teams React, instale os seguintes pacotes no AEM SDK local.
-
Equipes do WKND - Pacote de Conteúdo: contém os modelos de fragmento de conteúdo, fragmentos de conteúdo e consultas persistentes do GraphQL.
-
Equipes do WKND - Pacote de Configuração: contém as configurações de Compartilhamento de Recursos entre Origens (CORS) e Manipulador de Autenticação de Token. O CORS facilita que propriedades da Web que não sejam da AEM façam chamadas do lado do cliente baseadas em navegador para as APIs do GraphQL da AEM, e o Manipulador de autenticação de token é usado para autenticar cada solicitação para o AEM.
aplicativo React
Para configurar o aplicativo WKND Teams React, siga as etapas abaixo:
-
Clonar o aplicativo WKND Teams React da ramificação de solução
basic-tutorial
.code language-bash $ git clone -b solution/basic-tutorial git@github.com:adobe/aem-guides-wknd-graphql.git
-
Navegue até o diretório
basic-tutorial
e abra-o no editor de código.code language-bash $ cd aem-guides-wknd-graphql/basic-tutorial $ code .
-
Instale as dependências e inicie o aplicativo React.
code language-bash $ npm install $ npm start
-
Abra o aplicativo WKND Teams React no navegador em http://localhost:3000. Ele exibe uma lista de membros da equipe e seus detalhes. O conteúdo do aplicativo React é fornecido pelo AEM SDK local usando APIs do GraphQL (
/graphql/execute.json/my-project/all-teams
), que você pode verificar usando a guia de rede do navegador.
Serviço de Editor Universal
Para configurar o serviço Editor Universal local, siga as etapas abaixo:
-
Baixe a versão mais recente do serviço Universal Editor do Portal de Distribuição de Software.
-
Extraia o arquivo zip baixado e copie o arquivo
universal-editor-service.cjs
para um novo diretório chamadouniversal-editor-service
.code language-bash $ unzip universal-editor-service-vproduction-<version>.zip $ mkdir universal-editor-service $ cp universal-editor-service.cjs universal-editor-service
-
Crie o arquivo
.env
no diretóriouniversal-editor-service
e adicione as seguintes variáveis de ambiente:code language-bash # The port on which the Universal Editor service runs UES_PORT=8000 # Disable SSL verification UES_TLS_REJECT_UNAUTHORIZED=false
-
Iniciar o serviço Editor Universal local.
code language-bash $ cd universal-editor-service $ node universal-editor-service.cjs
O comando acima inicia o serviço do Editor Universal na porta 8000
e você deve ver a seguinte saída:
Either no private key or certificate was set. Starting as HTTP server
Universal Editor Service listening on port 8000 as HTTP Server
Proxy HTTP SSL local
O Editor universal do AEM exige que o aplicativo React seja distribuído por HTTPS. Vamos configurar um proxy HTTP SSL local que use um certificado autoassinado para desenvolvimento local.
Siga as etapas abaixo para configurar o proxy HTTP SSL local e servir o serviço do AEM SDK e Universal Editor por HTTPS:
-
Instalar o pacote
local-ssl-proxy
globalmente.code language-bash $ npm install -g local-ssl-proxy
-
Inicie duas instâncias do proxy HTTP SSL local para os seguintes serviços:
- Proxy HTTP SSL local do AEM SDK na porta
8443
. - Proxy HTTP SSL local do serviço do Universal Editor na porta
8001
.
code language-bash # AEM SDK local SSL HTTP proxy on port 8443 $ local-ssl-proxy --source 8443 --target 4502 # Universal Editor service local SSL HTTP proxy on port 8001 $ local-ssl-proxy --source 8001 --target 8000
- Proxy HTTP SSL local do AEM SDK na porta
Atualizar o aplicativo React para usar HTTPS
Para habilitar o HTTPS para o aplicativo WKND Teams React, siga as etapas abaixo:
-
Pare o React pressionando
Ctrl + C
no terminal. -
Atualize o arquivo
package.json
para incluir a variável de ambienteHTTPS=true
no scriptstart
.code language-json "scripts": { "start": "HTTPS=true react-scripts start", ... }
-
Atualize o
REACT_APP_HOST_URI
no arquivo.env.development
para usar o protocolo HTTPS e a porta do proxy HTTP SSL local do AEM SDK.code language-bash REACT_APP_HOST_URI=https://localhost:8443 ...
-
Atualize o arquivo
../src/proxy/setupProxy.auth.basic.js
para usar configurações de SSL relaxadas usando a opçãosecure: false
.code language-javascript ... module.exports = function(app) { app.use( ['/content', '/graphql'], createProxyMiddleware({ target: REACT_APP_HOST_URI, changeOrigin: true, secure: false, // Ignore SSL certificate errors // pass in credentials when developing against an Author environment auth: `${REACT_APP_BASIC_AUTH_USER}:${REACT_APP_BASIC_AUTH_PASS}` }) ); };
-
Inicie o aplicativo React.
code language-bash $ npm start
Verificar a configuração
Depois de configurar o ambiente de desenvolvimento local usando as etapas acima, vamos verificar a configuração.
Verificação local
Verifique se os seguintes serviços estão sendo executados localmente em HTTPS. Talvez seja necessário aceitar o aviso de segurança no navegador para o certificado autoassinado:
- Aplicativo WKND Teams React em https://localhost:3000
- AEM SDK em https://localhost:8443
- Serviço de Editor Universal em https://localhost:8001
Carregar o aplicativo WKND Teams React no Editor universal
Vamos carregar o aplicativo WKND Teams React no Editor universal para verificar a configuração:
-
Abra o Editor universal https://experience.adobe.com/#/aem/editor no navegador. Se solicitado, faça logon usando sua Adobe ID.
-
Insira a URL do aplicativo WKND Teams React no campo de entrada URL do site do Editor Universal e clique em
Open
. -
O aplicativo WKND Teams React é carregado no Universal Editor mas você ainda não pode editar o conteúdo. É necessário instrumentar o aplicativo React para habilitar a edição de conteúdo usando o Editor universal.
Próxima etapa
Saiba como instrumentar o aplicativo React para editar o conteúdo.