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 de l’éditeur universel d’AEM.

Prérequis

Pour suivre ce tutoriel, vous devez suivre les étapes ci-après :

  • Compétences de base en HTML et JavaScript.

  • Les outils suivants doivent être installés localement :

  • Téléchargez et installez les éléments suivants :

    • SDK AEM as a Cloud Service : contient le fichier Quickstart Jar utilisé pour exécuter les instances de création et de publication d’AEM localement à des fins de développement.
    • Service Éditeur universel : copie locale du service Éditeur universel, il comporte un sous-ensemble de fonctionnalités et peut être téléchargé à partir du portail de distribution logicielle.
    • local-ssl-proxy : proxy HTTP SSL local simple utilisant un certificat auto-signé pour le développement local. L’éditeur universel d’AEM requiert l’URL HTTPS de l’application React pour la charger dans l’éditeur.

Configuration locale

Pour installer l’environnement de développement local, procédez comme suit :

SDK AEM

Pour fournir le contenu de l’application React WKND Teams, installez les packages suivants dans le SDK AEM local.

  • WKND Teams - Package de contenu : contient les modèles de fragment de contenu, les fragments de contenu et les requêtes GraphQL persistantes.

  • WKND Teams - Package de configuration : contient les configurations CORS (Cross-Origin Resource Sharing) et de gestionnaire d’authentification du jeton. La norme CORS facilite les propriétés web non AEM pour effectuer des appels côté client basés sur un navigateur vers l’API GraphQL d’AEM et le gestionnaire d’authentification du jeton est utilisé pour authentifier chaque demande vers AEM.

    WKND Teams - Packages

Application React

Pour configurer l’application React WKND Teams, procédez comme suit :

  1. Clonez l’application React WKND Teams 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
    
  2. 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 .
    
  3. Installez les dépendances et démarrez l’application React.

    code language-bash
    $ npm install
    $ npm start
    
  4. Ouvrez l’application React WKND Teams dans votre navigateur à l’adresse http://localhost:3000. Elle affiche la liste des personnes membres de l’équipe et leurs détails. Le contenu de l’application React est fourni par le SDK 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.

    WKND Teams - Application React

Service Éditeur universel

Pour configurer le service local Éditeur universel, procédez comme suit :

  1. Téléchargez la dernière version de l’éditeur universel à partir du Portail de distribution logicielle.

    Distribution logicielle - Service Éditeur universel

  2. 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
    
  3. Créez le fichier .env dans le répertoire universal-editor-service et ajoutez les variables d’environnement suivantes :

    code language-bash
    # The port on which the Universal Editor service runs
    UES_PORT=8000
    # Disable SSL verification
    UES_TLS_REJECT_UNAUTHORIZED=false
    
  4. Démarrez le service local Éditeur universel.

    code language-bash
    $ cd universal-editor-service
    $ node universal-editor-service.cjs
    

La commande ci-dessus lance le service Éditeur universel 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

L’éditeur universel d’AEM exige que l’application React soit diffusée via HTTPS. Configurons 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 diffuser le SDK AEM et le service Éditeur universel via HTTPS :

  1. Installez le package local-ssl-proxy de manière globale.

    code language-bash
    $ npm install -g local-ssl-proxy
    
  2. Démarrez deux instances du proxy HTTP SSL local pour les services suivants :

    • SDL AEM local du proxy HTTP SSL sur le port 8443.
    • Proxy HTTP SSL local du service Éditeur universel 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
    

Mettre à jour l’application React pour utiliser HTTPS

Pour activer HTTPS pour l’application React WKND Teams, procédez comme suit :

  1. Arrêtez l’application React en appuyant sur Ctrl + C dans le terminal.

  2. Mettez à jour le fichier package.json pour inclure la variable d’environnement HTTPS=true dans le script start.

    code language-json
    "scripts": {
        "start": "HTTPS=true react-scripts start",
        ...
    }
    
  3. 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
    ...
    
  4. Mettez à jour le fichier ../src/proxy/setupProxy.auth.basic.js pour utiliser des paramètres SSL souples à l’aide de l’option secure: 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}`
        })
    );
    };
    
  5. Démarrez l’application React.

    code language-bash
    $ npm start
    

Vérifier 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é :

  1. Application React WKND Teams sur https://localhost:3000
  2. SDK AEM sur https://localhost:8443
  3. Service Éditeur universel sur https://localhost:8001

Charger l’application React WKND Teams dans l’éditeur universel

Chargeons l’application React WKND Teams dans l’éditeur universel pour vérifier la configuration :

  1. Ouvrez l’éditeur universel https://experience.adobe.com/#/aem/editor dans votre navigateur. Si on vous y invite, connectez-vous à l’aide de votre Adobe ID.

  2. Saisissez l’URL de l’application React WKND Teams dans le champ de saisie URL du site de l’éditeur universel et cliquez sur Open.

    Éditeur universel - URL du site

  3. L’application React WKND Teams se charge dans l’éditeur universel, mais vous ne pouvez pas encore modifier le contenu. Vous devez utiliser l’application React pour activer la modification de contenu à l’aide de l’éditeur universel.

    Éditeur universel - Application React WKN Teams

Étape suivante

Découvrez comment instrumentaliser l’application React pour modifier le contenu.

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69