1. 程式人生 > 其它 >SAP 電商雲 Spartacus UI 同 SAP Customer Data Cloud 的整合

SAP 電商雲 Spartacus UI 同 SAP Customer Data Cloud 的整合

SAP Customer Data Cloud 允許您啟用自定義註冊和登入,還可以管理使用者配置檔案和 consent 資訊。

要將 SAP Customer Data Cloud 與 Spartacus 整合,您必須具備以下條件之一:

  • SAP Commerce Cloud 2011,以及 SAP Commerce Cloud,Integration Extension Pack 2108
  • SAP Commerce Cloud 2005 以及 SAP Commerce Cloud Integration Extension Pack 2108
  • SAP Commerce Cloud 1905,以及最新版本的 Integration Extension Pack 2108

與 SAP Customer Data Cloud 整合時,您可以通過安裝所需的擴充套件手動開始。

使用 cx_integrations recipe 執行安裝 SAP Commerce Cloud 的一般步驟,但不要初始化。

將以下擴充套件新增到 localextensions.xml:

  • gigyaloginaddon
  • gigyabackoffice
  • gigyab2bloginaddon (for B2B)
  • gigyab2bbackoffice (for B2B)

將 gigyaloginaddon 安裝到您的店面擴充套件:

ant addoninstall -Daddonnames="gigyaloginaddon" -DaddonStorefront.yacceleratorstorefront=","

將 gigyab2bloginaddon 安裝到您的店面擴充套件:

ant addoninstall -Daddonnames="gigyab2bloginaddon" -DaddonStorefront.yacceleratorstorefront=""

在 SAP Commerce Cloud 中,如果要取消啟用 SAP Customer Data Cloud 中刪除的使用者,請在 localextensions.xml 中新增 gigyauserdeleteservices 擴充套件,並在 local.properties 檔案中新增以下配置:

gigyauserdeleteservices.s3.config.accessKeyID=
gigyauserdeleteservices.s3.config.secretAccessKey=
gigyauserdeleteservices.s3.config.region=
gigyauserdeleteservices.s3.config.bucketId=

// 要處理的檔名的字首
gigyauserdeleteservices.s3.config.objectnames.prefix=

您還可以覆蓋屬性:gigya.mandatory.attributes.list= UID,local.properties 中的名稱,以逗號分隔的客戶屬性。從後臺更新這些屬性後,此客戶資訊將同步到 SAP Customer Data Cloud

構建並啟動伺服器,然後初始化 SAP Commerce Cloud。

Enabling SAP Customer Data Cloud Integration in Spartacus

需要在 Commerce Cloud 後臺和 Spartacus 前臺同時配置。

Commerce Cloud 後臺,需要 Enable the SAP Customer Data Cloud extensions for B2C.

您可以通過 /cdc/login URL 檢視 SAP Customer Data Cloud 登入頁面。

這允許您一起訪問客戶資料雲頁面和預設登入頁面。

更新 mobile_android OAuth 客戶端以支援自定義授權授予型別,並刪除 refresh_token 授予型別。 以下 ImpEx 可用於更新授權型別:

INSERT_UPDATE OAuthClientDetails ; clientId[unique = true] ; resourceIds ; scope ; authorizedGrantTypes                                  ; authorities ; clientSecret ; registeredRedirectUri
                                 ; mobile_android          ; hybris      ; basic ; authorization_code,password,client_credentials,custom ; ROLE_CLIENT ; secret       ; http://localhost:9001/authorizationserver/oauth2_callback ;

不支援重新整理令牌。 這可確保來自 Commerce Cloud 的令牌和 SAP Customer Data Cloud 登入會話保持相同的持續時間。

SAP Spartacus 端的配置

通過從店面應用程式的根目錄中執行以下命令來安裝 SAP Customer Data Cloud 整合庫:

ng add @spartacus/cdc

執行此命令時,原理圖會為 CDC 整合建立一個模組,其中包含所有必需的匯入和配置。

在新建立的 module 裡,啟用 CDC 需要的配置:

provideConfig(<CdcConfig>{
      [CDC_FEATURE]: [
        {
          baseSite: 'electronics-spa',
          javascriptUrl: 'https://cdns.<data-center>.gigya.com/JS/gigya.js?apikey=<Site-API-Key>',
          sessionExpiration: 3600,
        },
      ],
    }),
  • baseSite 是指應應用客戶資料雲站點配置的 CMS 站點。 也應該在 SAP Commerce Cloud Backoffice 中配置相同的內容。

  • javascriptUrl 指定要載入的 Web SDK 的 URL。 這是使用站點 API 金鑰的值以及建立客戶資料雲站點的資料中心構建的。 例如,https://cdns..gigya.com/JS/gigya.js?apikey=

  • sessionExpiration 是定義 SAP Customer Data Cloud 會話的會話到期時間(以秒為單位)。 這應該與 OAuth 客戶端的會話到期時間相匹配,以確保客戶資料雲會話和 SAP Commerce Cloud 令牌同時存在。