通过JSON有效负载下载、存储和更新规则构件
如果应用程序的结构方式要求SDK在使用SDK方法的每个文件中初始化,则此方法将最为有效。 在SDK初始化期间,Web应用程序可以使用规则工件的JSON有效负载之前,您应确保已下载JSON有效负载并且可供应用程序使用。
步骤摘要
- 安装SDK
- 初始化SDK
- 存储和使用JSON有效负载
1.安装SDK
NPM
code language-javascript line-numbers |
---|
|
MVN
code language-javascript line-numbers |
---|
|
2.初始化SDK
-
首先,导入SDK。 导入到用于控制服务器启动的同一文件。
Node.js
code language-javascript line-numbers const TargetClient = require("@adobe/target-nodejs-sdk");
Java
code language-javascript line-numbers import com.adobe.target.edge.client.ClientConfig; import com.adobe.target.edge.client.TargetClient;
-
要配置SDK,请使用创建方法。
Node.js
code language-javascript line-numbers const CONFIG = { client: "<your target client code>", organizationId: "your EC org id", decisioningMethod: "on-device", pollingInterval : 300000, events: { artifactDownloadSucceeded: onArtifactDownloadSucceeded, artifactDownloadFailed: onArtifactDownloadFailed } }; const TargetClient = TargetClient.create(CONFIG); function onArtifactDownloadSucceeded(event) { //Adobe Target SDK has now downloaded the JSON Artifact/Payload console.log(event.artifactLocation) // Location from where the Artifact is downloaded. console.log(event.artifactPayload) // JSON Payload which we can store locally. } function onArtifactDownloadFailed(event) { //Adobe Target SDK has failed to download the JSON Artifact/Payload. console.log(event.artifactLocation) // Location from where the Artifact is downloaded. console.log(event.error.message) // Error message }
Java
code language-javascript line-numbers package com.adobe.target.edge.client.model.ondevice.OnDeviceDecisioningHandler; ClientConfig config = ClientConfig.builder() .client("<you target client code>") .organizationId("<your EC org id>") .onDeviceDecisioningHandler( new OnDeviceDecisioningHandler() { void onDeviceDecisioningReady() { // On-Device Decision is ready. } void artifactDownloadSucceeded(byte[] artifactData) { // Store artifactData to local disk. // ... } } ) .build(); TargetClient targetClient = TargetClient.create(config);
-
通过导航到 Administration > Implementation,可从Adobe Target中检索客户端和
organizationId
,如下所示。<! — 插入image-client-code.png —>
3.存储和重设JSON有效负载
用于存储JSON有效负载的机制取决于您的系统架构。 您可以使用本地文件、数据库或内存对象缓存系统,如Memcached。 您需要能够从应用程序读取此JSON以供使用。 在本指南中,我们使用本地文件作为存储。
Node.js
code language-javascript line-numbers |
---|
|
Java
code language-javascript line-numbers |
---|
|
NOTE
通过通过JSON有效负载初始化Adobe TargetSDK,您的服务器可以立即为设备上决策活动提供请求,因为Adobe TargetSDK无需等待规则工件下载完成。
以下示例演示了JSON有效负载初始化功能。
Node.js
code language-javascript line-numbers |
---|
|
Java
code language-javascript line-numbers |
---|
|
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3