Как всегда знать актуальное время истечения срока действия cookie в Analytics.js
Мое приложение обменивается данными с Google Analytics, и ему всегда нужно знать время истечения срока действия файла cookie GA.
Я устанавливаю время истечения срока действия куки при создании трекера:
ga('create', 'UA-XXXX-Y', {
'cookieExpires': 60 * 60 * 24 * 28 // Cookie expiration time
});
Но согласно документам analytics.js это значение может измениться, если запрос будет отправлен на серверы GA:
Каждый раз, когда запрос / запрос отправляется на серверы Google Analytics, время истечения срока действия cookie обновляется, чтобы соответствовать текущему времени плюс значение времени cookieExpires (в секундах) в будущем.
Есть ли способ иметь один обработчик событий для всех событий в analytics.js? Или есть другое решение, позволяющее всегда знать время, когда истекает срок действия файла cookie GA?
1 ответ
Вы не можете прочитать срок действия существующего куки.
Таким образом, вы можете решить эту проблему, установив дополнительный файл 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=/';
}