23

我正在设置 Mixpanel,我发现如果我用一个用户(和identify那个用户)登录,注销然后重新注册为新用户,新用户的详细信息会覆盖以前登录的用户(大概是当我打电话alias)。如何告诉 mixpanel 用户已注销并重置身份令牌(再次使其匿名)?

4

4 回答 4

14

我遇到了同样的问题,经过一番调查后,我发现您可以使用mixpanel.cookie.clear().

但是,您需要确保 mixpanel 库已加载,因此我最终将其设置为愚蠢的超时:

var id = window.setInterval(function() {
  if (mixpanel.cookie && mixpanel.cookie.clear) {
    mixpanel.cookie.clear();
    window.clearInterval(id);
  }
}, 50);

然后,因为我不想在每个页面上都这样做,所以我在我的注销重定向 URL 上添加了一个查询字符串参数。因此,在访问后/logout会将它们重定向到/home?_ref=logout,此时只有存在该查询字符串参数时,我才会清除 mixpanel cookie。

这很烦人,但它似乎有效。

于 2014-02-27T05:29:03.337 回答
10

它是在 Mixpanel Javascript 版本 v2.8.0 上发布的该mixpanel.reset()功能,因此正式用户注销时应该调用它。请参阅https://github.com/mixpanel/mixpanel-js/issues/67

于 2016-07-13T20:59:06.277 回答
9

对于注销时的android,您可以使用它MixpanelAPI.reset()

于 2015-10-13T13:36:05.957 回答
4
  1. 调用clearSuperProperties()以删除本地存储中的任何超级属性。
  2. new_distinct_id = UUID.randomUUID().toString());
  3. 打电话.identify(new_distinct_id).getPeople().identify(new_distinct_id)

这应该为新用户清除设备,然后该用户可以注册并别名为另一个distinct_id.

使用 javascript 执行此操作的最佳方法是删除 cookie。cookie 的名称是mp_{mixpanel_token_id}_mixpanel

于 2014-09-18T10:07:40.577 回答