我的应用与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到期的时间?
答案 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=/';
}