正解:A
Salesforce B2C Commerce では、キャッシュは、再生成することなく複数のリクエストに再利用できるコンテンツを保存することで、パフォーマンスを向上させる上で重要な役割を果たします。Storefront Reference Architecture (SFRA) は、サーバー側 JavaScript コントローラーを通じてキャッシュを効果的に管理するための特定のメカニズムを提供します。
ここでは、SFRA コントローラでルートのキャッシュを実装するさまざまな方法を検討します。
* オプションA:
server.get('Show', cache.applyDefaultCache, function (req, res, next) { // code }); このスニペットは、SFRA でキャッシュを適用するためのベスト プラクティスを正しく示しています。cache.applyDefaultCache メソッドは、ルート設定でミドルウェアとして使用されます。このミドルウェア アプローチは明確で、SFRA のプラクティスに沿っており、コントローラ ロジックが実行される前にキャッシュ動作を明確に定義して一貫して適用できます。
* オプションB:
html
このタグは ISML テンプレート内のキャッシュを定義するために使用され、コンテンツを 24 時間キャッシュすることを指定しますが、コントローラー応答のキャッシュには直接影響しません。このスニペットは、サーバー側ルートでのキャッシュの実装には適していませんが、ページの特定のセグメントのプレゼンテーション層でのキャッシュの実装には適しています。
* オプションC:
ジャバスクリプト
このスニペットは、ルートを定義した後、キャッシュ メソッドをアプリケーションとしてチェーンしようとします。ただし、このアプローチは正しくなく、SFRA のプラクティスや JavaScript の構文に準拠していません。cache.applyDefaultCache などのミドルウェア関数は、後でチェーンするのではなく、ルート定義の一部として含める必要があります。
コンテキストと SFRA のベスト プラクティスの順守を考慮すると、オプション A は既存のページにキャッシュを追加する正しい推奨方法です。この方法では、キャッシュがミドルウェアとして統合され、リクエスト ライフサイクル内で適切に処理され、ルート管理とキャッシュに対する SFRA の構造化されたアプローチと一致します。