SAP Customer Data Cloud Integration
Spartacus 3.2 版可用。
SAP Customer Data Cloud 允许您启用自定义注册和登录,还可以管理用户配置文件和同意。
需要的系统配置:
-
SAP Commerce Cloud 2011 以及 SAP Commerce Cloud 集成扩展包 2108
-
SAP Commerce Cloud 2005 以及 SAP Commerce Cloud 集成扩展包
-
SAP Commerce Cloud 1905,以及最新版本的 Commerce Cloud 扩展包
要在 Spartacus 中启用 SAP Customer Data Cloud Integration,您需要配置 Commerce Cloud 后端和 Spartacus 前端。
在 Commerce Cloud 后台所需的配置
为 B2C 启用 SAP Customer Data Cloud 扩展。构建和更新系统,以便 SAP Customer Data Cloud 集成扩展提供的新功能可用。此步骤还为 electronics-spaContentCatalog 内容目录创建示例CMS 数据。
您可以通过
更新 mobile_android OAuth 客户端(在步骤 1 中创建)以支持自定义授权授予类型,并删除 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 Customer Data Cloud 站点配置并将其链接到 electronics-spa.
SAP Spartacus 端的配置
通过从店面应用程序的根目录中运行以下命令来安装 SAP Customer Data Cloud 集成库。
ng add @spartacus/cdc
运行此命令时,Schematics 会为 CDC 集成创建一个模块,其中包含所有必需的导入和配置。
要使用 Schematics 安装 CDC 集成库,您的应用程序结构需要匹配 Spartacus 参考应用程序结构。 有关更多信息,请参阅参考应用程序结构。
或者,您可以手动创建模块并将其导入您的应用程序,如以下示例所示:
import { NgModule } from '@angular/core'; import { CdcConfig, CdcRootModule, CDC_FEATURE } from '@spartacus/cdc/root'; import { provideConfig } from '@spartacus/core'; @NgModule({ declarations: [], imports: [CdcRootModule], providers: [ provideConfig({ featureModules: { [CDC_FEATURE]: { module: () => import('@spartacus/cdc').then((m) => m.CdcModule), }, }, }), provideConfig(<CdcConfig>{ cdc: [ { baseSite: 'electronics-spa', javascriptUrl: '<paste-link-to-cdc-script>', sessionExpiration: 3600, }, ], }), ], }) export class CdcFeatureModule {}
上面的代码需要对配置进行手动调整:
provideConfig(<CdcConfig>{ [CDC_FEATURE]: [ { baseSite: 'electronics-spa', javascriptUrl: 'https://cdns.<data-center>.gigya.com/JS/gigya.js?apikey=<Site-API-Key>', sessionExpiration: 3600, }, ], }),
以下是 CDC 配置中可用选项的摘要:
-
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 令牌同时存在。