天天看点

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

首先一个 account login 请求:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

url:https://accounts.eu1.gigya.com/accounts.login

直接访问的话,会报错误消息:缺少 API Key:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

每刷新一次浏览器,callId 会变化一次。

response:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

token 请求的负载:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

成功取得 Access Token:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

HTTP post:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

请求的 payload:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤
SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

成功返回的数据:

SAP Spartacus 和 CDC 集成的 HTTP 请求明细Spartacus 和 CDC 的集成配置步骤

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 令牌同时存在。