Execução do seu próprio serviço de editor universal local-ue-service
Saiba como executar seu próprio Universal Editor Service para desenvolvimento local ou como parte de sua própria infraestrutura.
Visão geral overview
O Universal Editor Service é o que vincula o Universal Editor e o sistema de back-end. Para desenvolver localmente para o Universal Editor, você deve executar uma cópia local do Universal Editor Service. Isso ocorre porque:
- O Serviço Editor Universal oficial do Adobe é hospedado globalmente, e sua instância AEM local precisaria ser exposta à internet.
- Ao desenvolver com um SDK AEM local, o Adobe Universal Editor Service não pode ser acessado na Internet.
- Se a instância do AEM tiver restrições de IP e o Adobe Universal Editor Service não estiver em um intervalo de IP definido, você mesmo poderá hospedá-lo.
Casos de uso use-cases
Sua própria cópia do Universal Editor Service é útil se você deseja:
- Desenvolver localmente no AEM para uso com o Editor universal.
- Execute seu próprio Universal Editor Service como parte de sua própria infraestrutura, independente do Adobe Universal Editor Service.
Ambos os casos de uso são compatíveis. Este documento explica como executar o AEM em HTTPS junto com uma cópia local do Universal Editor Service.
Se você quiser executar seu próprio Universal Editor Service como parte de sua própria infraestrutura, siga as mesmas etapas do exemplo de desenvolvimento local.
Configurar AEM para execução em HTTPS aem-https
Em um quadro externo protegido com HTTPS, um quadro HTTP não seguro não pode ser carregado. O Universal Editor Service é executado em HTTPS e, portanto, o AEM ou qualquer outra página remota também deve ser executado em HTTPS.
Para fazer isso, é necessário configurar o AEM para ser executado em HTTPS. Para fins de desenvolvimento, é possível usar o certificado autoassinado.
Consulte este documento sobre como configurar o AEM em execução em HTTPS, incluindo um certificado autoassinado que você pode usar.
Instalar o Universal Editor Service install-ue-service
O Universal Editor Service não é uma cópia inteira do Universal Editor, mas apenas um subconjunto de seus recursos para garantir que as chamadas do seu ambiente local do AEM não sejam roteadas pela Internet, mas de um terminal definido sob seu controle.
A versão 20 do NodeJS é necessária para executar uma cópia local do Universal Editor Service.
O Universal Editor Service está disponível por meio da Distribuição de software. Consulte a documentação de Distribuição de software para obter detalhes sobre como acessá-la.
Salve o arquivo universal-editor-service.cjs
da Distribuição de software no ambiente de desenvolvimento local.
Criar um certificado para executar o Universal Editor Service com HTTPS ue-https
O Universal Editor Service também requer um certificado para ser executado em HTTPS no ambiente de desenvolvimento.
Execute o seguinte comando.
$ openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
O comando gera um arquivo key.pem
e certificate.pem
. Salve esses arquivos no mesmo caminho do arquivo universal-editor-service.cjs
.
Definição da Configuração do Serviço do Editor Universal setting-up-service
Várias variáveis de ambiente devem ser definidas no NodeJS para executar o Universal Editor Service localmente.
No mesmo caminho dos arquivos universal-editor-service.cjs
, key.pem
e certificate.pem
, crie um arquivo .env
com o conteúdo a seguir.
UES_PORT=8000
UES_PRIVATE_KEY=./key.pem
UES_CERT=./certificate.pem
UES_TLS_REJECT_UNAUTHORIZED=false
UES_CORS_PRIVATE_NETWORK=true
Esses são os valores mínimos necessários para o desenvolvimento local em nosso exemplo.
UES_CORS_PRIVATE_NETWORK
.A tabela a seguir detalha esses e outros valores disponíveis.
UES_PORT
8080
UES_PRIVATE_KEY
UES_CERT
UES_TLS_REJECT_UNAUTHORIZED
true
UES_DISABLE_IMS_VALIDATION
false
UES_ENDPOINT_MAPPING
Exemplo:
UES_ENDPOINT_MAPPING='[{"https://your-public-facing-author-domain.net": "http://10.0.0.1:4502"}]'
Resultado: o Universal Editor Service se conectará a
http://10.0.0.1:4502
em vez da conexão fornecida https://your-public-facing-author-domain.net
UES_LOG_LEVEL
info
silly
, trace
, debug
, verbose
, info
, log
, warn
, error
e fatal
UES_SPLUNK_HEC_URL
UES_SPLUNK_TOKEN
UES_SPLUNK_INDEX
UES_SPLUNK_SOURCE
universal-editor-service
UES_CORS_PRIVATE_NETWORK
false
.env
. Esses valores terão suporte até 1 de outubro de 2024 para compatibilidade com versões anteriores.EXPRESS_PORT=8000
EXPRESS_PRIVATE_KEY=./key.pem
EXPRESS_CERT=./certificate.pem
NODE_TLS_REJECT_UNAUTHORIZED=0
Execução do Serviço do Editor Universal running-ue
Para iniciar o Universal Editor Service, execute o seguinte comando:
$ node ./universal-editor-service.cjs
Ele deve enviar o seguinte para o terminal:
Universal Editor Service listening on port 8000 as HTTPS Server
Certifique-se de que o serviço inicie o Servidor HTTPS e não o Servidor HTTP.
Usar o serviço do editor universal local em vez do serviço global using-local-ue
O Editor universal sabe qual Serviço do Editor universal usar para editar uma página com base em como a página é instrumentada. Isso é feito por meio de metatags na página carregada no Editor universal.
Para que uma página seja editada usando seu Universal Editor Service local, a seguinte meta tag deve ser definida:
<meta name="urn:adobe:aue:config:service" content="https://localhost:8000">
Depois de definido, você deve ver todas as chamadas de atualização de conteúdo indo para https://localhost:8000
em vez do Universal Editor Service padrão.
https://localhost:8000
resulta em um erro 404
. Esse é o comportamento esperado.https://localhost:8000/corslib/LATEST
. Consulte a próxima seção para obter detalhes.Editar uma página com o serviço do Editor universal local editing
Com o Serviço do Editor Universal sendo executado localmente e sua página de conteúdo instrumentada para usar o serviço local, agora você pode iniciar o editor.
- Abra o navegador no
https://localhost:8000/ping
. - Instrua o navegador a aceitar o certificado autoassinado.
- Quando o certificado autoassinado for confiável, você poderá editar a página usando o Serviço do Editor Universal local.