SAP Spartacus 和 CDC 集成的 HTTP 请求明
首先一个 account login 请求:
url:https://accounts.eu1.gigya.com/accounts.login
直接访问的话,会报错误消息:缺少 API Key:
每刷新一次浏览器,callId 会变化一次。
response:
token 请求的负载:
成功取得 Access Token:
HTTP post:
请求的 payload:
成功返回的数据:
Spartacus 和 CDC 的集成配置步骤
通过在店面应用程序的根目录中运行以下命令来安装 SAP Customer Data Cloud 集成库:
ng add @spartacus/cdc
当您运行此命令时,Angular Schematics 会为 CDC 集成创建一个模块,其中包括所有必需的导入和配置。
注意:要使用原理图安装 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 {}
调整新建模块中的CDC配置,如下例所示:
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.<data-center>.gigya.com/JS/gigya.js?apikey=<Site-API-Key>
-
sessionExpiration 是定义 SAP Customer Data Cloud 会话的会话到期的时间(以秒为单位)。 这应该与 OAuth 客户端的会话到期时间相匹配,以确保 Customer Data Cloud 会话和 SAP Commerce Cloud 令牌同时存在。