Hybrid-Stabilitäts-Upgrade für PWA Kit Version 2.x

In diesem Leitfaden wird erläutert, wie Sie Codeänderungen in einer Hybrid-Storefront vornehmen und überprüfen, um:

  • Aktualisieren Sie ein PWA-Kit-Projekt (Progressive Web App) auf Version 2.8.4 oder früher, um die Hybridstabilität zu implementieren. Dies kann die Leistung von Körben verbessern.
  • Führen Sie ein Upgrade von Plugin Shopper Login und API Access Service (Plugin SLAS) Version 7.3.0 oder höher auf Version 7.4.0 durch.

Es wird empfohlen, die Schritte in einer Nicht-Produktionsumgebung zu testen, bevor Sie Ihre Änderungen in der Produktion bereitstellen.

Nur bestehende Kunden können auf einige der Links auf dieser Seite zugreifen. Besuchen Sie Salesforce Commerce Cloud GitHub Repositories and Access (Salesforce Commerce Cloud GitHub Repositorys und Zugriff), um Informationen darüber zu erhalten, wie Sie Zugriff auf die Commerce Cloud-Repositorys erhalten.

Um die Stabilität und Leistung für hybride Storefronts zu verbessern, gehen wir wie folgt vor:

  • Aufrufe von OCAPI /sessions aus PWA Kit entfernt, um Sitzungsabwanderungen zu vermeiden (häufige Änderungen an dwsid). Weitere Informationen zu finden Sie unter Grundlegendes zur dwsid Sitzungsverwaltung zwischen SFRA und PWA Kit.
  • Den Aufrufen der Salesforce Commerce API (SCAPI) wurde ein Header (sfdc_dwsid) hinzugefügt, um die dwsid an SCAPI zu senden, um sicherzustellen, dass Anforderungen von einer bestimmten Käufersitzung an denselben Anwendungsserver weitergeleitet werden.
  • Der Open Commerce API (OCAPI)-Proxy wurde aus der PWA Kit-Konfiguration entfernt, wodurch PWA Kit vollständig SCAPI-basiert wird.

Wenn Sie dies noch nicht getan haben, führen Sie die folgenden Schritte aus.

Öffnen Sie einen Supportfall, in dem der Salesforce-Kundensupport aufgefordert wird, die Sitzungsüberschreibung für dwsid zu aktivieren. Im Support-Fall:

  • Anforderung zum Aktivieren von übergeordneten und untergeordneten Umschaltern.
  • Geben Sie Ihre korrekte Bereichs-ID und Mandanten-ID an. Wenn Sie Ihre Realm-ID nicht kennen, wenden Sie sich an Ihren Account Executive oder Customer Success Manager.

Wenn Sie PWA Kit Version 2.8.4 oder früher verwenden, führen Sie diese Schritte in Ihrem Projekt aus.

  1. Überprüfen Sie den Unterschied zwischen diesen Dateien in Ihrem Projekt und den Dateien, die in diesem Pull Request geändert wurden.

    • 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. Aktualisieren Sie Ihr Projekt mit dem neuen und geänderten Code im Pull Request.

Wenn Sie Plug-in-Plug-in SLAS Version 7.3.0 oder höher verwenden, führen Sie die folgenden Schritte aus.

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

    • Entfernen Sie das access_token Cookie nach dem Abmelden in der Steuerung /Login-Logout
    • Fügen Sie dem cookiesToRemove Array im /Login-Logout Controller hinzu config.ACCESS_TOKEN_COOKIE_NAME.
  2. Aktualisieren cartridges/plugin_slas/cartridge/scripts/helpers/slasAuthHelper.js Sie in die removeCookie Funktion, um vorhandene Cookie-Blöcke zu entfernen:

    • Ändern Sie die Bedingung von exact match (==) in .startsWith.
  3. Aktualisieren Sie in cartridges/plugin_slas/cartridge/scripts/hooks/request/onSession.js die onSession Hook-Implementierung für den neuen Gastkäufer-Flow:

    • Extrahieren Sie das dwsid from x-is-session_id header in eine Variable.
    • Verwenden Sie die Variable im Aufruf von getSLASAccessTokenForGuestSessionBridge.
    • Setzen Sie das dwsid Cookie auf die Antwort für neue Gastkäufer.

Sehen Sie sich die Dateien an, die in diesem Pull Request geändert wurden.

  1. Vergewissern Sie sich, dass PWA Kit keine Aufrufe an OCAPI /sessions.

    • Gehen Sie zu Ihrem Storefront und löschen Sie alle Websitedaten.

      Wenn Sie Chrome DevTools verwenden, finden Sie weitere Informationen unter Löschen aller Cachedaten.

    • Aktualisieren Sie Ihre Storefront, oder wechseln Sie zu einer beliebigen Seite, die auf PWA Kit basiert, und überprüfen Sie die Registerkarte "Netzwerk" in Chrome DevTools. Vergewissern Sie sich, dass keine Anfragen an 'dw/shop//sessions' gestellt werden. Sehen Sie sich dieses Beispiel von Chrome DevTools an.

Keine Sitzungen

  1. Vergewissern Sie sich, dass diese dwsid mit allen SCAPI-Anforderungen gesendet wird.

    • Gehen Sie zu Ihrem Storefront. Besuchen Sie eine beliebige SFRA/SG-basierte Seite und gehen Sie dann zu einer PWA Kit-basierten Seite.
    • Wenn Sie Chrome DevTools verwenden:
      • Öffnen Sie den Cookie-Speicher und suchen Sie nach dwsid Wert in den Cookies. Siehe Öffnen des Fensters "Cookies".
      • Öffnen Sie die Registerkarte Netzwerk, und überprüfen Sie alle SCAPI-Anforderungen (z. B /baskets. ). Vergewissern Sie sich, dass in den Anforderungsheadern der sfdc_dwsid Header mit dem gleichen Wert angezeigt wird dwsid, den Sie im vorherigen Schritt gefunden haben. Sehen Sie sich dieses Beispiel von Chrome DevTools an.

Keine Sitzungen