PWA Kitバージョン3.8.0のハイブリッド安定性アップグレード
このガイドでは、ハイブリッド ストアフロントでコード変更を行い、検証する方法について説明します。
- Progressive Web App (PWA) Kit プロジェクトをバージョン 3.5.0 以降からバージョン 3.8.0 に更新します。
- Plugin Shopper Login and API Access Service (Plugin SLAS) バージョン 7.3.0 以降からバージョン 7.4.0 にアップグレードします。
変更を本番環境にデプロイする前に、非本番環境で手順をテストすることをお勧めします。
このページの一部のリンクにアクセスできるのは、既存のお客様のみです。Commerce Cloud リポジトリにアクセスする方法については、Salesforce Commerce Cloud GitHub リポジトリとアクセスを参照してください。
- このガイドの手順は、プラグイン SLASを使用するハイブリッドストアフロントに適用されます。B2C Commerce バージョン 25.3 では、プラグイン SLAS がハイブリッド認証 (auth) に置き換わります。詳細については、「ハイブリッド認証を使用したハイブリッド ストアフロントの構成」を参照してください。
- このガイドは、PWA Kit バージョン 3.5.0 以降で部分的に構築されたハイブリッド ストアフロントに適用されます。PWA Kit バージョン 2.x に適用される手順については、「PWA Kit バージョン 2.x のハイブリッド安定性アップグレード」を参照してください。
ハイブリッドストアフロントの安定性とパフォーマンスを向上させるために、マイクロソフトは以下を行います。
- セッション チャーンを排除するために、PWA Kit から
OCAPI /sessions
への呼び出しを削除しました (dwsid
への頻繁な変更)。dwsid
の詳細については、「SFRA と PWA Kit 間のセッション管理について」を参照してください。 - Salesforce Commerce API (SCAPI) 呼び出しにヘッダーを追加して、
dwsid
を SCAPI に送信し、特定の買い物客セッションからのリクエストが同じアプリサーバーにルーティングされるようにしました。 - PWA Kit 構成から Open Commerce API (OCAPI) プロキシを削除し、PWA Kit を完全に SCAPI ベースにしました。
まだ行っていない場合は、次の手順を実行します。
- PWA Kit 用 SLAS の設定
- セッションブリッジの設定
- ルーティングの構成。段階的なヘッドレスロールアウト用の CDN API も参照してください。
- PWA Kit プロジェクトへのその他の変更点の追加
dwsid のセッション上書きを有効にするよう Salesforce カスタマーサポートに依頼するサポートケースを開きます。サポートケースでは、次のようになります。
- 親と子の両方のトグルを有効にするように要求します。
- 正しいレルム ID とテナント ID を指定します。レルム ID がわからない場合は、アカウントエグゼクティブまたはカスタマーサクセスマネージャーに問い合わせてくださいCustomer Success Manager。
PWA Kit バージョン 3.5.0 以降を使用している場合:
-
Commerce SDK React の最新バージョンにアップグレードするには、次のコマンドを実行します。
npm install @salesforce/commerce-sdk-react@latest
-
最新バージョンの Retail React App にアップグレードするには、次のコマンドを実行します。
npm install @salesforce/retail-react-app@latest
プラグイン SLAS バージョン 7.3.0 以降を使用している場合は、次の手順を実行します。
-
範囲
cartridges/plugin_slas/cartridge/controllers/Login.js
:/Login-Logout
コントローラーでログアウトした後、access_token
Cookie を削除します/Login-Logout
コントローラーのcookiesToRemove
配列にconfig.ACCESS_TOKEN_COOKIE_NAME
を追加します。
-
cartridges/plugin_slas/cartridge/scripts/helpers/slasAuthHelper.js
で、removeCookie
関数を更新して、既存の Cookie のチャンクをすべて削除します。- 条件を完全一致 ( == ) から
.startsWith
に変更します。
- 条件を完全一致 ( == ) から
-
cartridges/plugin_slas/cartridge/scripts/hooks/request/onSession.js
で、新しいゲスト買い物客フローのonSession
フックの実装を更新します。x-is-session_id header
からdwsid
を変数に抽出します。getSLASAccessTokenForGuestSessionBridge
への呼び出しで変数を使用します。- 新規ゲスト買い物客への応答に
dwsid
Cookie を設定します。
このプルリクエストで変更されたファイルを参照してください。
-
PWA Kit が
OCAPI /sessions
に電話をかけていないことを確認します。-
ストアフロントに移動し、すべてのサイトデータを消去します。
Chrome DevTools を使用している場合は、「すべてのキャッシュ データを削除する」を参照してください。
-
ストアフロントを更新するか、PWA Kit ベースの任意のページに移動して、Chrome DevTools の [ネットワーク] タブを調べます。「dw/shop/
/sessions」へのリクエストが表示されていないことを確認します。Chrome DevTools のこの例を参照してください。
-
-
すべての SCAPI リクエストで
dwsid
が送信されることを確認します。- ストアフロントに移動します。SFRA/SGベースのページにアクセスし、PWA Kitベースのページに移動します。
- Chrome DevTools を使用している場合:
- Cookieストレージを開き
dwsid
Cookieの値を探します。「Cookie ペインを開く」を参照してください。 - 「ネットワーク」タブを開き、SCAPI リクエスト (
/baskets
など) を検査します。[Request Headers] に、前の手順で見つけたdwsid
と同じ値を持つsfdc_dwsid
ヘッダーが表示されていることを確認します。Chrome DevTools のこの例を参照してください。
- Cookieストレージを開き