SDK事件(Node.js)

描述

初始化SDK时,options.events对象是可选对象,具有事件名称键和回调函数值。 它可用于订阅SDK内发生的各种事件。 例如,clientReady事件可与回调函数一起使用,在SDK准备好进行方法调用时将调用该回调函数。

调用回调函数时,将传入一个事件对象。 每个事件都有一个与事件名称对应的type。 某些事件包含其他属性及相关信息。

事件

事件名称(类型)
描述
其他事件属性
clientready
在下载工件并且SDK准备好进行getOffers调用时发出。 建议在使用设备上决策方法时使用该选项。
artifactDownloadSucceeded
每次下载新工件时发出。
artifactPayload, artifactLocation
artifactDownloadFailed
每次未能下载工件时发出。
artifactLocation,错误

示例

Node.js

const targetClient = TargetClient.create({
    client: "acmeclient",
    organizationId: "1234567890@AdobeOrg",
    decisioningMethod: "on-device",
    events: {
        clientReady: onTargetClientReady,
        artifactDownloadSucceeded: onArtifactDownloadSucceeded,
        artifactDownloadFailed: onArtifactDownloadFailed
    }
});

function onTargetClientReady() {
    // make getOffers requests
    targetClient.getOffers({...})
}

function onArtifactDownloadSucceeded(event) {
    console.log(`The artifact was successfully downloaded from '${event.artifactLocation}'`);
    // optionally do something with event.artifactPayload, like persist it
}

function onArtifactDownloadFailed(event) {
    console.log(`The artifact failed to download from '${event.artifactLocation}' with the following error message: ${event.error.message}`);
}
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3