Как всегда знать актуальное время истечения срока действия 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=/';
}
Другие вопросы по тегам