Сейчас в сети: 959
Обсуждение проблем, связанных с кодом отслеживания событий, кодом Universal Analytics и настройки междоменного отслеживания
Подсказки
star_border
Ответить

Блокировка скрипта UA

Студент ✭

Здравствуйте!

На сайте используется скрипт вида:

ga(function(tracker){
sendInfo(tracker.get('clientId'), "другие параметры");
});

в функции sendInfo описана отправка client_id и других параметров о посещении в стороннюю систему.

Все больше посетителей используют в браузерах защиту от отслеживания. Например, firefox в режиме инкогнито блокирует загрузку скрипта UA, в Opera появилась встроененная защита от отслеживания, блокирующая загрузку UA, плюс есть масса сторонних плагинов.

В итоге имеем, что если в браузере посетителя скрипт UA блокируется, объект ga все равно создается, однако далее загрузка UA блокируется, и весь код, который находиться внутри ga(function(tracker){ , в частности функция sendInfo - не выполняется, не давая на выходе каких либо скриптовых ошибок.

Если какое то скриптовое решение, чтобы понять, был ли скрипт UA заблокирован в браузере? Можно ли выполнить проверку на блокировку до вызова ga(function(tracker){ ... });?
Либо, возможно в UA есть какая либо колбек-функция, которая срабатывает если скрипт был заблокирован?
В общем, интересует любое адекватное решение, чтобы в случае блокировки скрипта UA все равно выполнить функцию sendInfo (пусть даже без передачи в нее client_id).

1 Ответ экспертаverified_user

Блокировка скрипта UA

Ведущий участник

Привет.
clientId - же можно получить из куки и отправить его средствами PHP(предпочтительный вариант) или JS.
Тут есть еще один подводный камень, если будет заблокирован скрипт - кука не создаться, и читать будет нечего.
Лучшее решение для таких проектов - отказ от CID и использование собственного

C уважением,
Павел

Блокировка скрипта UA

Студент ✭

Данные надо отправить с как можно меньшей задержкой при загрузке страницы, сразу после загрузки скрипта UA. Поэтому и использую отправку через ga(function(tracker){ ... }); А если отказаться от ga(function(tracker){ ... }) и тянуть cid из куки - при первичном заходе на сайт, когда куки еще нет, как понять, что скрипт UA уже отработал и записал куку?

Блокировка скрипта UA

Ведущий участник

Даю информацию как "инженер".  За деталями реализации - к программистам (если вы не он). Мне сложно ответить, в какой именно момент, и каким способом проверить создалась ли кука.
Самое логичное - проверять  скриптом. Но если ее нет и заблокирован скрипт UA, то что дальше делать будете?
Такая проблема есть не только у вас. И не только с кастомными решениями, а с вполне обычными задачами.  Сильно страдает точность. 

C уважением,
Павел