我想跟踪我正在构建的Chrome扩展程序上的事件。所以我希望每个用户都有一个唯一的标识符。
我不想要有关用户的任何信息,只是我希望所有这些事件都组合在一起。
有没有一种好方法可以解决这个问题,而无需ping服务器。或者我会使用一个非常长的随机字符串,因此另一个用户获得相同字符串的概率很低。
我正在使用segment.io的analytics.js包与mixpanel集成。
答案 0 :(得分:2)
您可以在扩展程序安装/更新时生成ID。然后,您可以将此值用作唯一ID。这样的事情应该有用(把它放在你的背景页面):
chrome.runtime.onInstalled.addListener(function(info){
//
// info.reason should contain either "install" or "update"
var sessionId = localStorage.getItem("session-id");
if(!sessionId){
localStorage.setItem("session-id", "random-session-id");
}
});
有关onInstalled的更多信息,请访问:https://developer.chrome.com/extensions/runtime#event-onInstalled。注意:它会在安装,扩展程序更新和Chrome更新时触发。
答案 1 :(得分:1)
不确定为什么Mixpanel会在这个问题上被标记,但既然如此,我会提到Mixpanel jslib解决了这个问题。
如果您在未标识用户的情况下发送事件,则jslib会根据时间Math.random()
和浏览器特征自动生成UUID。这些数据存储在cookie中。