示例用法

云眼About 2 min

示例用法

本主题提供了一个简短的代码示例,说明如何使用云眼灰度发布(特性标帜)AB实验 JavaScript(节点)SDK 来评估灰度发布(特性标帜)、激活 A/B 测试或功能测试。

安装 JavaScript (Node) SDK 后,将 Eyeofcloud Feature Experimentation 库导入代码,获取项目的数据文件,并实例化客户端。然后,可以使用客户端评估标帜规则,包括 A/B 测试和标帜传递。

此示例演示了以下每个概念的基本用法:

  1. 使用 Decide 方法计算具有键product_sort的标帜。作为副作用,Decision函数还会向云眼灰度发布(特性标帜)AB实验发送决策事件,以记录当前用户已暴露于实验。

  2. 有条件地执行特征代码。有以下几种选择:

  • 获取标帜启用状态,然后检查标帜上名为sort_method的配置变量。SDK 会评估标帜规则,并确定用户所处的标帜变体,从而确定他们应该看到的排序方法变量。
  • 获取标帜变体,然后运行“控制”或“处理”代码。
  1. 使用事件跟踪跟踪名为purchased的事件。此转化事件衡量实验的影响。使用 Track Event 方法,购买会自动归因于我们做出决策的正在运行的 A/B 测试,SDK 会通过可自定义的事件调度程序向 Eyeofcloud 功能实验发送网络请求,以便我们可以将其计入“结果”页面。

使用 NPM

const eyeofcloud = require("@eyeofcloud/eyeofcloud-sdk");  

const eyeofcloudClient = eyeofcloud.createInstance({   
    sdkKey: "<Your_SDK_KEY>" // Provide the sdkKey of your desired environment here 
}); 

eyeofcloudClient.onReady().then(() => {   
    var attributes = { logged_in: true };   
    var user = eyeofcloudClient.createUserContext('user123', attributes);    
    var decision = user.decide('product_sort');   
    var variationKey = decision['variationKey'];    
    if (variationKey === null) {     
        console.log(' decision error: ', decision['reasons']);   
    }    
    var enabled = decision['enabled'];    
    if (enabled) {     
        var sortMethod = decision.variables['sort_method'];     
        // execute code for sort method value   
    }    
    if (variationKey === 'control') {     
        // Execute code for control variation   
    } 
    else if (variationKey === 'treatment') {     
        // Execute code for treatment variation   
    }       
    // Track an event   user.trackEvent('purchased');
});
Last update:
Contributors: “zhangweixue”,zhangweixue