【问题标题】:Overwrite value in document.cookie覆盖 document.cookie 中的值
【发布时间】:2020-06-04 15:36:03
【问题描述】:

我正在使用 Google 360​​ 运行 AB 测试,我想在我的浏览器中切换变体。

我可以通过在浏览器中更新 cookie _gaexp 的值来做到这一点。例如,这看起来像:

"_gaexp: VARIANT_0"`.

如果我使用 EditThisCookie chrome 扩展并将值更改为 VARIANT_0 并刷新我的浏览器,我可以在浏览器中看到我的 Variant 0 文本。

但是,我想通过 JavaScript 动态更新它(例如,假设点击)。

通过控制台查看,我可以看到我可以访问document.cookie,其中包含以下烹饪:

"_gaexp=VARIANT_0; _ga=EXAMPLE_B; _gid=EXAMPLE_C"

如果我尝试通过控制台将 _gaexp 更新为 VARIANT_1,我的 cookie 不会更新。这就是我正在尝试的:

document.cookie = "_gaexp=VARIANT_1";
document.cookie;
"_gaexp=VARIANT_0; _ga=EXAMPLE_B; _gid=EXAMPLE_C, _gaexp=VARIANT_1"

似乎我正在添加一个相同名称的重复 cookie,但我只想:

  • 使用 JavaScript 通过控制台替换此烹饪。
  • 最后,我会编写额外的 JS 来刷新浏览器,(更新 cookie)。

我做错了什么?

谢谢。

【问题讨论】:

    标签: javascript cookies session-cookies ab-testing google-optimize


    【解决方案1】:

    没关系,我想通了!

    只需要更改时间戳,将其删除:

    // Delete
    document.cookie = '_gaexp=VARIANT_0; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/; domain=.mysite.co.uk'
    
    // Add
    document.cookie = '_gaexp=VARIANT_1; expires=Fri, 19 Jun 2020 20:47:11 UTC; path=/; domain=.mysite.co.uk'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      • 1970-01-01
      • 2019-10-04
      相关资源
      最近更新 更多