Configurazione dello sviluppo locale
Scopri come configurare un ambiente di sviluppo locale per modificare i contenuti di un'app React utilizzando l'Editor universale di AEM.
Prerequisiti
Per seguire questo tutorial sono necessari i seguenti elementi:
-
Competenze di base di HTML e JavaScript.
-
È necessario installare localmente i seguenti strumenti:
- Node.js
- Git
- Un IDE o un editor di codice, ad esempio Visual Studio Code
-
Scarica e installa quanto segue:
- AEM as a Cloud Service SDK: contiene il file Jar Quickstart utilizzato per eseguire l'authoring di AEM e la pubblicazione locale a scopo di sviluppo.
- Servizio Editor universale: una copia locale del servizio Editor universale, con un sottoinsieme di funzionalità e scaricabile dal portale di distribuzione software.
- local-ssl-proxy: un semplice proxy HTTP SSL locale che utilizza un certificato autofirmato per lo sviluppo locale. L'Editor universale di AEM richiede l'URL HTTPS dell'app React per caricarlo nell'editor.
Configurazione locale
Per configurare l'ambiente di sviluppo locale, segui questi passaggi:
SDK AEM
Per fornire i contenuti per l'app WKND Teams React, installa i seguenti pacchetti nel SDK AEM locale.
-
Team WKND - Pacchetto di contenuti: contiene i modelli per frammenti di contenuto, frammenti di contenuto e query GraphQL persistenti.
-
Team WKND - Pacchetto di configurazione: contiene le configurazioni CORS (Cross-Origin Resource Sharing) e del gestore di autenticazione token. CORS facilita nel proprietà web non AEM per l'esecuzione di chiamate lato client basate sul browser alle API GraphQL di AEM e il gestore di autenticazione token viene utilizzato per autenticare ogni richiesta in AEM.
App React
Per configurare l'app WKND Teams React, effettua le seguenti operazioni:
-
Clona l'app WKND Teams React dal ramo della soluzione
basic-tutorial.code language-bash $ git clone -b solution/basic-tutorial git@github.com:adobe/aem-guides-wknd-graphql.git -
Passa alla directory
basic-tutoriale aprila nell'editor di codice.code language-bash $ cd aem-guides-wknd-graphql/basic-tutorial $ code . -
Installa le dipendenze e avvia l'app React.
code language-bash $ npm install $ npm start -
Apri l'app WKND Teams React nel browser in http://localhost:3000. Viene visualizzato un elenco dei membri del gruppo e i relativi dettagli. Il contenuto dell'app React è fornito dal SDK AEM locale tramite le API GraphQL (
/graphql/execute.json/my-project/all-teams), che puoi verificare utilizzando la scheda di rete del browser.
Servizio Editor universale
Per configurare il servizio Editor universale locale, effettua le seguenti operazioni:
-
Scarica la versione più recente del servizio Editor universale dal Portale di distribuzione software.
-
Estrai il file zip scaricato e copia il file
universal-editor-service.cjsin una nuova directory denominatauniversal-editor-service.code language-bash $ unzip universal-editor-service-vproduction-<version>.zip $ mkdir universal-editor-service $ cp universal-editor-service.cjs universal-editor-service -
Crea il file
.envnella directoryuniversal-editor-servicee aggiungi le seguenti variabili di ambiente:code language-bash # The port on which the Universal Editor service runs UES_PORT=8000 # Disable SSL verification UES_TLS_REJECT_UNAUTHORIZED=false -
Avvia il servizio dell’editor universale locale.
code language-bash $ cd universal-editor-service $ node universal-editor-service.cjs
Il comando precedente avvia il servizio dell’editor universale sulla porta 8000. Dovrebbe essere visualizzato il seguente output:
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 locale
L’editor universale AEM richiede che l’app React venga distribuita tramite HTTPS. Viene configurato un proxy HTTP SSL locale che utilizza un certificato autofirmato per lo sviluppo locale.
Segui i passaggi seguenti per configurare il proxy HTTP SSL locale e distribuire il servizio Editor universale e AEM SDK tramite HTTPS:
-
Installare il pacchetto
local-ssl-proxya livello globale.code language-bash $ npm install -g local-ssl-proxy -
Avvia due istanze del proxy HTTP SSL locale per i servizi seguenti:
- Proxy HTTP SSL locale di AEM SDK sulla porta
8443. - Proxy HTTP SSL locale del servizio Editor universale sulla 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 locale di AEM SDK sulla porta
Aggiornare l’app React per utilizzare HTTPS
Per abilitare HTTPS per l’app React WKND Teams, segui i passaggi seguenti:
-
Interrompi React premendo
Ctrl + Cnel terminale. -
Aggiorna il file
package.jsonper includere la variabile di ambienteHTTPS=truenello scriptstart.code language-json "scripts": { "start": "HTTPS=true react-scripts start", ... } -
Aggiorna
REACT_APP_HOST_URInel file.env.developmentper utilizzare il protocollo HTTPS e la porta proxy HTTP SSL locale di AEM SDK.code language-bash REACT_APP_HOST_URI=https://localhost:8443 ... -
Aggiorna il file
../src/proxy/setupProxy.auth.basic.jsper utilizzare le impostazioni SSL flessibili utilizzando l’opzionesecure: 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}` }) ); }; -
Avvia l’app React.
code language-bash $ npm start
Verificare la configurazione
Dopo aver configurato l’ambiente di sviluppo locale seguendo i passaggi precedenti, verifichiamo la configurazione.
Verifica locale
Assicurati che i seguenti servizi siano in esecuzione localmente su HTTPS. Potrebbe essere necessario accettare l’avviso di sicurezza nel browser per il certificato autofirmato:
- App React WKND Teams su https://localhost:3000
- AEM SDK su https://localhost:8443
- Servizio Editor universale su https://localhost:8001
Caricare l’app React WKND Teams nell’editor universale
Carichiamo l’app React WKND Teams nell’editor universale per verificare la configurazione:
-
Apri l’editor universale https://experience.adobe.com/#/aem/editor nel browser. Se richiesto, effettua l’accesso con il tuo Adobe ID.
-
Immetti l’URL dell’app React WKND Teams nel campo di input per l’URL del sito dell’editor universale e fai clic su
Open.
-
L’app React WKND Teams viene caricata nell’editor universale ma non è ancora possibile modificare il contenuto. È necessario dotare l’app React di strumenti che consentano di modificare i contenuti mediante l’editor universale.
Passaggio successivo
Scopri come dotare l’app React per modificare il contenuto.