TL; 博士; Mixpanel 没有设置它的 cookie 来引起 distinct_id 不断变化
我有 3 个 mixpanel 项目:local/staging/pro。在本地 mixpanel 跟踪中工作得很好,但即使代码相同(mixpanel token 除外),事件也会正确发送,但始终会更改 disting_id。所以,我看到 mixpanel 中的每个事件都好像来自不同的设备?!
我检查了一下,问题可能来自于 mixpanel 根本没有在我的浏览器中设置它的 cookie。
暂存源代码如下所示:
<head>
...
<script type="text/javascript" async="" src="//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js"></script>
前
<script>
(function(e,b){if(!b.__SV){var a,f,i,g;window.mixpanel=b;b._i=[];b.init=function(a,e,d){function f(b,h){var a=h.split(".");2==a.length&&(b=b[a[0]],h=a[1]);b[h]=function(){b.push([h].concat(Array.prototype.slice.call(arguments,0)))}}var c=b;"undefined"!==typeof d?c=b[d]=[]:d="mixpanel";c.people=c.people||[];c.toString=function(b){var a="mixpanel";"mixpanel"!==d&&(a+="."+d);b||(a+=" (stub)");return a};c.people.toString=function(){return c.toString(1)+".people (stub)"};i="disable time_event track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config people.set people.set_once people.increment people.append people.union people.track_charge people.clear_charges people.delete_user".split(" ");
for(g=0;g<i.length;g++)f(c,i[g]);b._i.push([a,e,d])};b.__SV=1.2;a=e.createElement("script");a.type="text/javascript";a.async=!0;a.src="undefined"!==typeof MIXPANEL_CUSTOM_LIB_URL?MIXPANEL_CUSTOM_LIB_URL:"file:"===e.location.protocol&&"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js".match(/^\/\//)?"https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js":"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js";f=e.getElementsByTagName("script")[0];f.parentNode.insertBefore(a,f)}})(document,window.mixpanel||[]);
mixpanel.init("xxxxxx3ecxxx68a2ff74xxxx", {debug:true});
</script>
最后我跟踪
<script>
mixpanel.track('Visit');
</script>
最佳答案
如果它是您的临时站点,您可能正在使用不允许跨子域 cookie(例如 heroku、aws 等)的顶级域,例如 yoursubdomain.herokuapp.com。您可以:
或者
mixpanel.init(PROJECT_TOKEN, {cross_subdomain_cookie : false }) ;
这是解释的混合面板文档:https://mixpanel.com/help/questions/articles/mixpanel-and-herokuappcom-subdomains-and-other-common-top-level-domains
这是破坏 cookie 的顶级 url 列表:https://publicsuffix.org/list/effective_tld_names.dat
关于未设置 Mixpanel cookie,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34238978/