Add the #DF24 Developer Keynote to your agenda. Join us in-person on 9/18 at 2:30 p.m. PT or on Salesforce+ at 5 p.m. PT for the must-see session built just for developers.

Verwendung eines privaten SLAS Client

Shopper Login und API Access (SLAS) API-Clients ermöglichen es Ihrer Anwendung, Käufer zu authentifizieren und zu autorisieren. Von SLAS Clients gibt es zwei Typen: öffentliche und private.

Private SLAS Clients bieten mehrere Vorteile gegenüber einem öffentlichen Client, darunter:

  • Autorisieren Sie Gastkäufer im Voraus für Zugriffsanfragen auf ein Geschäft, um die Seitenladezeiten zu verkürzen.
  • Aktivieren Sie die Verwendung von Funktionalitäten, die für öffentliche SLAS Clients nicht verfügbar sind, wie die passwortlose Anmeldung oder Zurücksetzen des Passworts. Siehe Anwendungsfälle für private SLAS Clients.

Um die Vorteile eines privaten SLAS Client zu nutzen, muss Ihr Projekt einen geheimen Client-Schlüssel sicher speichern können.

Erwägen Sie die Verwendung eines öffentlichen Clients, wenn Ihr Projekt clientseitig ausgeführt wird und direkt mit SLAS kommunizieren muss.

PWA Kit 3.5 und höher unterstützt die Verwendung von öffentlichen und privaten SLAS Clients.

Alle PWA-Versionen vor PWA Kit 3.5 unterstützen nur öffentliche SLAS Clients.

Sollten Sie bereits eine PWA Kit-Website mit einen öffentlichen SLAS Client haben, lesen Sie weiter und erwägen Sie den Wechsel auf einen privaten Client.

Ersetzen Sie vor dem Ausführen der Befehle in dieser Anleitung alle Platzhalter durch tatsächliche Werte. Platzhalter haben das folgende Format: $PLACEHOLDER.

Bei privaten Clients sollte darauf geachtet werden, dass der geheime Client-Schlüssel nicht für Käufer und clientseitige Browser verfügbar gemacht wird.

Um den geheimen Client-Schlüssel zu schützen, speichert ihn die PWA Kit Retail React App serverseitig mithilfe von Umgebungsvariablen. Weitere Informationen zum Speichern des geheimen Client-Schlüssels finden Sie unter Festlegen von Umgebungsvariablen.

Führen Sie auf hoher Ebene die folgenden Schritte aus, um einen privaten SLAS Client mit Ihrer PWA Kit-Website einzurichten.

  • Erstellen des privaten SLAS Client
  • Konfigurieren des PWA-Kits
  • Festlegen von Umgebungsvariablen

Befolgen Sie zunächst die Anleitungen unter Autorisierung für Shopper APIs und Einrichtung des API-Zugriffs, um Ihren privaten SLAS Client zu erstellen.

Nachdem Sie Ihren privaten SLAS Client erstellt haben, führen Sie die folgenden Schritte aus, um ihn mit Ihrer PWA Kit-Website zu verwenden:

  1. Aktualisieren Sie auf PWA Kit v3.5 oder höher.
  2. Setzen Sie in ssr.js die "options-pass-to"-Eigenschaft useSLASPrivateClient für runtime.createHandler auf true:
  3. Setzen Sie in Ihrem _app-config/index.js die Eigenschaft enablePWAKitPrivateClient von <CommerceAPIProvider> auf true.
  4. Legen Sie in Ihrer PWA Kit-Konfigurationsdatei Ihre "commerceAPI clientId" auf Ihre private SLAS Client-ID fest.
  5. Legen Sie in Ihrer Umgebung die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET auf Ihren privaten SLAS Client-Schlüssel fest.
  1. Legen Sie in Ihrer PWA Kit-Konfigurationsdatei Ihre "commerceAPI clientId" auf Ihre private SLAS Client-ID fest.
  2. Legen Sie in Ihrer Umgebung die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET auf Ihren privaten SLAS Client-Schlüssel fest.

Führen Sie den folgenden Befehl aus, um die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET lokal in einer aktiven Eingabeaufforderung festzulegen:

  • Führen Sie unter Mac oder Unix Folgendes aus: export PWA_KIT_SLAS_CLIENT_SECRET=$YOUR_CLIENT_SECRET
  • Führen Sie unter Windows Folgendes aus:set PWA_KIT_SLAS_CLIENT_SECRET=$YOUR_CLIENT_SECRET

In einer lokalen Entwicklungsumgebung sollten Sie die Option PWA_KIT_SLAS_CLIENT_SECRET langfristig festlegen, damit sie beim Öffnen einer neuen Eingabeaufforderung automatisch eingeschlossen wird.

Legen Sie unter Mac oder Unix dafür die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET in der Datei .bashrc Ihres Computers fest. Unter Windows legen Sie die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET folgendermaßen fest: Systemsteuerung -> System -> Erweitert -> Umgebungsvariablen.

Wenn Sie Ihre PWA Kit-Website per Fernzugriff in Managed Runtime ausführen, können Sie die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET mit dem folgenden Befehl in Ihrem Terminal festlegen, nachdem Sie die Variablen passend für Ihre Umgebung ersetzt haben.

Weitere Informationen zum Abrufen eines Managed Runtime-API-Schlüssels und anderer Eigenschaften Ihrer Remote-Umgebung finden Sie in unserer Anleitung für das Pushen und Bereitstellung von Bündeln.

Weitere Informationen finden Sie unter Umgebungsvariablen.

Zusätzlich zu den obigen Schritten zur Einrichtung des PWA Kits sollten Sie bei der phasenweisen Einführung einer Storefront, die sowohl PWA Kit als auch SFRA verwendet, auch Plugin-SLAS aktualisieren, um Ihren privaten SLAS Client zu verwenden. Anleitungen zur Einrichtung eines privaten SLAS Client für SFRA finden Sie in der Plugin SLAS Readme-Datei.

Wenn Sie Ihre PWA Kit-Implementierung erweitern, um andere SLAS-Endpunkte zu verwenden, die private Clients wie die passwortlose Anmeldung erfordern, können Sie die verfügbaren Endpunkte mit der Option applySLASPrivateClientToEndpoints für runtime.createHandlererweitern:

  • Wenn HTTP 400-Aufrufe an SLAS /authorize angezeigt werden, verwendet die PWA Kit-Website die öffentlichen SLAS Client-Flows mit Ihrer privaten Client-ID. Setzen Sie in Ihrer Datei _app-config/index.js die Eigenschaft enablePWAKitPrivateClient im CommerceAPIProvider auf true.

  • In einer lokalen Development-Umgebung wird der PWA Kit-Server nicht gestartet, wenn die Eigenschaft useSLASPrivateClient in ssr.js aktiviert ist und die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET nicht festgelegt wurde. Legen Sie die Umgebungsvariable für Ihren SLAS Client-Schlüssel fest, um fortzufahren.

  • Wenn nach dem Bereitstellen Ihrer PWA Kit-Website in Managed Runtime beim Aufrufen von SLAS ein HTTP 501-Fehler angezeigt wird, kann dies bedeuten, dass die Umgebungsvariable PWA_KIT_SLAS_CLIENT_SECRET nicht festgelegt wurde. Warten Sie nachdem Festlegen einige Minuten, bis die Änderung übernommen wurde.