JSON ペイロードを使用したルールアーティファクトのダウンロード、保存、更新
この方法が最適なのは、SDK メソッドを使用するファイルごとに SDK を初期化する必要がある方法でアプリケーションが構造化されている場合です。 Web アプリケーションで SDK の初期化中にルールアーティファクトの 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 を設定するには、create メソッドを使用します。
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 ペイロードを保存して rse する
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