【问题标题】:Optimizely Sticky Session优化粘性会话
【发布时间】:2016-07-01 06:52:04
【问题描述】:

我刚刚尝试过 Optimizely。问题是它会向用户显示不同的变化。有时我们并不期望这种行为。例如,如果我将颜色从蓝色更改为红色,Optimizely 将在同一用户的原始(蓝色)和变体(红色)之间随机选择,这是不一致的。如何使 Optimizely 始终向用户显示相同的变化?

【问题讨论】:

    标签: optimizely


    【解决方案1】:

    将以下代码放入您的实验 JavaScript:

    setCookie = function (c_name,value,exdays) {
      var exdate=new Date();
      exdate.setDate(exdate.getDate() + exdays);
      var expires = exdate.toUTCString();
      var isIE8 = (document.documentMode !== undefined);
      if (exdays == 0) {
          expires = (isIE8 == true) ? "" : "0";
      }
      var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+expires);
      document.cookie=c_name + "=" + c_value;
    }
    

    在每个变体(例如蓝色变体、红色变体等)中,调用 setCookie 并检查该特定变体中用户的 cookie 是否存在。如果 cookie 确实存在,则运行您希望该特定变体运行的任何代码。下面是一个设置名为 tester 的 cookie 的示例,该 cookie 将在 30 天后过期。

    setCookie('tester',true,30);
    
    if(document.cookie.indexOf('tester')>-1){
      //RUN YOUR CODE HERE IF THIS VISITOR HAS THIS COOKIE
    }
    

    【讨论】:

      【解决方案2】:

      您好,我是 Optimizely 的工程师,

      您也可以尝试更面向开发人员的 Fullstack 产品。有了这个,您将获得一个随包一起安装的 SDK,并使用代码实现您的测试逻辑。

      例子:

      npm install optimizely-client-sdk

      const optimizely = require('optimizely-client-sdk');
      const optimizelyClient = optimizely.createInstance({
        datafile: {} // this is your experiment config which you get from the Optimizely UI
      });
      
      const variation = optimizelyClient.activate('color_experiment', 'user_1');
      if (variation === 'blue') {
        // do something for blue
      } else if (variation === 'red') {
        // do something for red
      } else {
        // default case
      }
      

      只要您将完全相同的user_id 作为第二个参数传递给activate,就可以保证始终为该用户获得相同的变体。

      有关入门的更多信息或详细信息,请查看:https://developers.optimizely.com/x/solutions/sdks/getting-started/index.html?language=javascript

      【讨论】:

        【解决方案3】:

        另外请记住,Optimizely 会被广告拦截器拦截,如果用户在进入页面并提供实验查看后打开广告拦截器,就会发生这种情况 - 他们将获得原始版本。

        【讨论】:

          猜你喜欢
          • 2012-05-16
          • 1970-01-01
          • 2011-09-16
          • 2019-09-24
          • 2016-07-25
          • 1970-01-01
          • 1970-01-01
          • 2011-02-12
          相关资源
          最近更新 更多