Configuration du développement local
Découvrez comment configurer un environnement de développement local pour modifier le contenu d’une application React à l’aide d’AEM Universal Editor.
Conditions préalables
Pour suivre ce tutoriel, vous devez suivre les étapes ci-après :
-
Compétences de base en HTML et en JavaScript.
-
Les outils suivants doivent être installés localement :
- Node.js
- Git
- Un éditeur IDE ou de code, tel que Visual Studio Code
-
Téléchargez et installez les éléments suivants :
- SDK AEM as a Cloud Service : contient le fichier Quickstart Jar utilisé pour exécuter AEM Author et Publish localement à des fins de développement.
- Service Universal Editor : copie locale du service Universal Editor, il comporte un sous-ensemble de fonctionnalités et peut être téléchargé à partir du portail de distribution de logiciels.
- local-ssl-proxy : proxy HTTP SSL local simple utilisant un certificat auto-signé pour le développement local. AEM Universal Editor requiert l’URL HTTPS de l’application React pour le charger dans l’éditeur.
Configuration locale
Pour configurer l’environnement de développement local, procédez comme suit :
SDK AEM
Pour fournir le contenu de l’application WKND Teams React, installez les modules suivants dans le SDK AEM local.
-
Équipes WKND - Package de contenu : contient les modèles de fragment de contenu, les fragments de contenu et les requêtes GraphQL persistantes.
-
Équipes WKND - Package de configuration : contient les configurations CORS (Cross-Origin Resource Sharing) et Token Authentication Handler. La norme CORS facilite les propriétés web non AEM pour effectuer des appels côté client basés sur un navigateur vers AEM API GraphQL et le gestionnaire d’authentification du jeton est utilisé pour authentifier chaque demande à l’.
Application React
Pour configurer l’application WKND Teams React, procédez comme suit :
-
Cloner l’application WKND Teams React de la branche de solution
basic-tutorial
.code language-bash $ git clone -b solution/basic-tutorial git@github.com:adobe/aem-guides-wknd-graphql.git
-
Accédez au répertoire
basic-tutorial
et ouvrez-le dans votre éditeur de code.code language-bash $ cd aem-guides-wknd-graphql/basic-tutorial $ code .
-
Installez les dépendances et démarrez l’application React.
code language-bash $ npm install $ npm start
-
Ouvrez l’application WKND Teams React dans votre navigateur à l’adresse http://localhost:3000. Elle affiche la liste des membres de l’équipe et leurs détails. Le contenu de l’application React est fourni par le SDK d’AEM local à l’aide des API GraphQL (
/graphql/execute.json/my-project/all-teams
), que vous pouvez vérifier à l’aide de l’onglet réseau du navigateur.
Service d’éditeur universel
Pour configurer le service local Universal Editor, procédez comme suit :
-
Téléchargez la dernière version du service Universal Editor à partir du Portail de distribution de logiciels.
-
Extrayez le fichier ZIP téléchargé et copiez le fichier
universal-editor-service.cjs
dans un nouveau répertoire appeléuniversal-editor-service
.code language-bash $ unzip universal-editor-service-vproduction-<version>.zip $ mkdir universal-editor-service $ cp universal-editor-service.cjs universal-editor-service
-
Créez le fichier
.env
dans le répertoireuniversal-editor-service
et ajoutez les variables d'environnement suivantes :code language-bash # The port on which the Universal Editor service runs EXPRESS_PORT=8000 # Disable SSL verification NODE_TLS_REJECT_UNAUTHORIZED=0
-
Démarrez le service local Universal Editor.
code language-bash $ cd universal-editor-service $ node universal-editor-service.cjs
La commande ci-dessus lance le service Universal Editor sur le port 8000
et vous devriez voir la sortie suivante :
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
AEM Universal Editor exige que l’application React soit diffusée via HTTPS. Configurez un proxy HTTP SSL local qui utilise un certificat auto-signé pour le développement local.
Suivez les étapes ci-dessous pour configurer le proxy HTTP SSL local et servir le SDK AEM et le service Universal Editor via HTTPS :
-
Installez le package
local-ssl-proxy
globalement.code language-bash $ npm install -g local-ssl-proxy
-
Démarrez deux instances du proxy HTTP SSL local pour les services suivants :
- AEM SDK local du proxy HTTP SSL sur le port
8443
. - proxy HTTP SSL local du service Universal Editor sur le port
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
- AEM SDK local du proxy HTTP SSL sur le port
Mettre à jour l’application React pour utiliser HTTPS
Pour activer HTTPS pour l’application WKND Teams React, procédez comme suit :
-
Arrêtez le React en appuyant sur
Ctrl + C
dans le terminal. -
Mettez à jour le fichier
package.json
pour inclure la variable d'environnementHTTPS=true
dans le scriptstart
.code language-json "scripts": { "start": "HTTPS=true react-scripts start", ... }
-
Mettez à jour
REACT_APP_HOST_URI
dans le fichier.env.development
pour utiliser le protocole HTTPS et le port proxy HTTP SSL local du SDK AEM.code language-bash REACT_APP_HOST_URI=https://localhost:8443 ...
-
Mettez à jour le fichier
../src/proxy/setupProxy.auth.basic.js
pour utiliser des paramètres SSL souples à l’aide de l’optionsecure: 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}` }) ); };
-
Démarrez l’application React.
code language-bash $ npm start
Vérification de la configuration
Après avoir configuré l’environnement de développement local en suivant les étapes ci-dessus, nous allons vérifier la configuration.
Vérification locale
Assurez-vous que les services suivants s’exécutent localement sur HTTPS. Vous devrez peut-être accepter l’avertissement de sécurité dans le navigateur pour le certificat auto-signé :
- Application WKND React pour les équipes sur https://localhost:3000
- AEM SDK sur https://localhost:8443
- Service Universal Editor sur https://localhost:8001
Charger l’application WKND Teams React dans Universal Editor
Chargons l’application WKND Teams React dans Universal Editor pour vérifier la configuration :
-
Ouvrez Universal Editor https://experience.adobe.com/#/aem/editor dans votre navigateur. Si vous y êtes invité, connectez-vous à l’aide de votre Adobe ID.
-
Saisissez l’URL de l’application WKND Team React dans le champ de saisie URL du site de l’éditeur universel et cliquez sur
Open
. -
L’application WKND Teams React se charge dans l’éditeur universel , mais vous ne pouvez pas encore modifier le contenu. Vous devez utiliser l’application React pour activer l’édition de contenu à l’aide d’Universal Editor.
Étape suivante
Découvrez comment instrumenter l’application React pour modifier le contenu.