Aggiornamento della stabilità ibrida per PWA Kit versione 2.x

Questa guida spiega come apportare e verificare le modifiche al codice in uno storefront ibrido per:

  • Aggiornare un progetto Progressive Web App (PWA) Kit nella versione 2.8.4 o precedente per implementare la stabilità ibrida. Ciò migliora potenzialmente le prestazioni dei carrelli.
  • Eseguire l'upgrade da Plugin Shopper Login and API Access Service (Plugin SLAS) versione 7.3.0 o successiva alla versione 7.4.0.

È consigliabile testare i passaggi in un ambiente non di produzione prima di distribuire le modifiche nell'ambiente Production.

Solo i clienti esistenti possono accedere ad alcuni dei link di questa pagina. Per informazioni su come accedere ai repository di Commerce Cloud, vedere Salesforce Commerce Cloud GitHub: repository e accesso.

Per migliorare la stabilità e le prestazioni degli storefront ibridi:

  • Sono state rimosse le chiamate a OCAPI /sessions da PWA Kit per eliminare la varianza della sessione (modifiche frequenti a dwsid). Per ulteriori informazioni su , vedere Informazioni sulla gestione delle sessioni tra SFRA e PWA Kit. dwsid
  • È stata aggiunta un'intestazione (sfdc_dwsid) alle chiamate SCAPI (Salesforce Commerce API) per l'invio dwsid a SCAPI per garantire che le richieste provenienti da una determinata sessione acquirente vengano indirizzate allo stesso server applicazioni.
  • È stato rimosso il proxy Open Commerce API (OCAPI) dalla configurazione di PWA Kit, che rende PWA Kit completamente basato su SCAPI.

Se non l'hai già fatto, completa questi passaggi.

Aprire una richiesta di assistenza che chiede all'assistenza clienti Salesforce di abilitare l'override della sessione per dwsid. Nel caso di supporto:

  • Richiesta di abilitare gli interruttori padre e figlio.
  • Indicare l'ID realm e l'ID tenant corretti. Se non conosci il tuo ID realm, rivolgiti al tuo Account Executive o Customer Success Manager.

Se si usa PWA Kit versione 2.8.4 o precedente, completare questi passaggi nel progetto.

  1. Controllare la differenza tra questi file nel progetto e i file modificati in questa richiesta pull.

    • template-retail-react-app/app/commerce-api/auth.js
    • template-retail-react-app/app/commerce-api/index.js
    • template-retail-react-app/app/commerce-api/utils.js
  2. Aggiornare il progetto con il codice nuovo e modificato nella richiesta pull.

Se utilizzi Plugin SLAS versione 7.3.0 o successiva, segui questi passaggi.

  1. In cartridges/plugin_slas/cartridge/controllers/Login.js:

    • Rimuovere il cookie dopo il access_token /Login-Logout logout nel controller
    • Aggiungere config.ACCESS_TOKEN_COOKIE_NAME all'array cookiesToRemove nel /Login-Logout controller.
  2. In cartridges/plugin_slas/cartridge/scripts/helpers/slasAuthHelper.js, aggiorna la removeCookie funzione per rimuovere eventuali blocchi di cookie esistenti:

    • Modificare la condizione da corrispondenza esatta (==) a .startsWith.
  3. In cartridges/plugin_slas/cartridge/scripts/hooks/request/onSession.js, aggiorna l'implementazione dell'hook onSession per il nuovo flusso di acquirenti ospiti:

    • Estrarre il dwsid da x-is-session_id header in una variabile.
    • Utilizzare la variabile nella chiamata a getSLASAccessTokenForGuestSessionBridge.
    • Impostare il dwsid cookie come risposta per i nuovi acquirenti ospiti.

Vedere i file modificati in questa richiesta pull.

  1. Verificare che PWA Kit non effettui chiamate a OCAPI /sessions.

    • Accedere allo storefront e cancellare tutti i dati del sito.

      Se utilizzi Chrome DevTools, vedi Eliminare tutti i dati della cache.

    • Aggiorna lo storefront o vai a qualsiasi pagina basata su PWA Kit e controlla la scheda Rete in Chrome DevTools. Verificare che non vengano visualizzate richieste inviate a 'dw/shop//sessions'. Guarda questo esempio di Chrome DevTools.

Nessuna sessione

  1. Confermare che dwsid viene inviato con tutte le richieste SCAPI.

    • Vai al tuo storefront. Visita qualsiasi pagina basata su SFRA/SG, quindi vai a una pagina basata su PWA Kit.
    • Se utilizzi Chrome DevTools:
      • Apri Archiviazione cookie e cerca dwsid il valore nei cookie. Vedere Aprire il riquadro Cookie.
      • Aprire la scheda Rete ed esaminare qualsiasi richiesta SCAPI (ad esempio, /baskets). In Intestazioni richiesta, verificare che venga visualizzata l'intestazione sfdc_dwsid con lo stesso valore trovato dwsid nel passaggio precedente. Guarda questo esempio di Chrome DevTools.

Nessuna sessione