Herunterladen, Speichern und Aktualisieren des Regelartefakts über die JSON-Payload
Dieser Ansatz empfiehlt sich, wenn die Anwendung so strukturiert ist, dass die SDK für jede Datei initialisiert werden muss, in der sie SDK-Methoden verwendet. Bevor Ihre Web-Anwendung die JSON-Payload des Regelartefakts während der SDK-Initialisierung verwenden kann, sollten Sie sicherstellen, dass die JSON-Payload heruntergeladen wurde und für Ihre Anwendung verfügbar ist.
Zusammenfassung der Schritte
- Installieren von SDK
- SDK initialisieren
- Speichern und Verwenden der JSON-Payload
1. Installieren des SDKS
code language-javascript line-numbers |
---|
|
code language-javascript line-numbers |
---|
|
2. SDK initialisieren
-
Importieren Sie zunächst die SDK. Importieren Sie in dieselbe Datei, von der aus Sie den Serverstart steuern können.
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;
-
Verwenden Sie zum Konfigurieren der SDK die Create-Methode.
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);
-
Sowohl der Client als auch die
organizationId
können von abgerufen werdenAdobe Target indem Sie zu Administration > Implementation navigieren, wie hier dargestellt.<!— insert image-client-code.png —>
3. Speichern und Wiederverwenden der JSON-Payload
Der Mechanismus zum Speichern der JSON-Payload hängt von Ihrer Systemarchitektur ab. Sie können eine lokale Datei, eine Datenbank oder ein Speicherobjekt-Caching-System wie Memcached verwenden. Sie müssen in der Lage sein, diese JSON aus Ihrer Anwendung für den Verbrauch zu lesen. In diesem Handbuch verwenden wir eine lokale Datei als Speicher.
code language-javascript line-numbers |
---|
|
code language-javascript line-numbers |
---|
|
Im Folgenden finden Sie ein Beispiel, das die JSON-Payload-Initialisierungsfunktion veranschaulicht.
code language-javascript line-numbers |
---|
|
code language-javascript line-numbers |
---|
|