如何始终了解Analytics.js中的最新Cookie到期时间

时间:2015-04-09 10:34:28

标签: javascript cookies google-analytics universal-analytics

我的应用与Google Analytics交换数据,并且需要始终知道GA Cookie过期的时间。

我在创建跟踪器时设置Cookie到期时间:

ga('create', 'UA-XXXX-Y', {
  'cookieExpires': 60 * 60 * 24 * 28  // Cookie expiration time
});

但根据analytics.js docs,如果请求发送到GA服务器,此值可能会更改:

  

每次向Google Analytics服务器发送匹配/请求时,都会   cookie到期时间更新为当前时间加上   cookie中的值将时间(以秒为单位)转换为未来

有没有办法为analytics.js中的所有事件提供单个事件处理程序?或者是否有另一种解决方案可以随时了解GA cookie到期的时间?

1 个答案:

答案 0 :(得分:1)

您无法读取现有Cookie的到期时间。

所以你可以通过设置一个额外的cookie(存储过期时间)来解决它,每次你发送一个命中时,原始cookie的时间段相同:

function ga_expiration() {
    var period = new Date();
    period.setTime(new Date().getTime() + 1000*60*60*24*28); // time in milliseconds
    document.cookie = 'ga_expiration=' + period.toUTCString() + '; expires=' + period.toUTCString() + '; path=/';
}