1

Когда хит отправляются с помощью Universal Analytics, имеет вид:параметра _u в универсальном Google Analytics собирает хиты

http://www.google-analytics.com/collect?v=1&_v=j30&a=1944069884&t=pageview&_s=1&dl=http%3A%2F%2Fwww.website.com%2F&ul=en-us&de=iso-8859-1&dt=pageName&sd=24-bit&sr=1280x1024&vp=1280x417&je=1&_u = eKCAgEQiQ ~ & Jid = & CID = 1347711856.1411502373 & TID = UA-XXXXXX- 1 & z = 763679241

Для чего нужен смелый _u параметр?

ответ

3

Похоже, что это аналитика аналитики. В то время как analytics.js запускается, устанавливаются отдельные биты массива длиной 48 бит (управляемые через function $c и его прототип).

var vd=new $c; 
function J(a){ 
    vd.set(a) 
} 

Например бит 48 установлен, если используется характеристика линкер, бит 42 установлен, если window.navigator.sendBeacon используется для отправки отслеживания маяк, бит 40 в случае передачи через XMLHttpRequest, бит 31, если / должен быть добавлено к извлеченному пути.

var e=d.pathname||""; 
"/" != e.charAt(0) && (J(31), e = "/" + e); 

8 групп по 6 бит используются для создания строки из 64 символов [A-Z-_] postpended тильды ~ и переданных в соответствии с параметром _u.

$c.prototype.encode = function(){ 
    //Group 6 bits to use a 64 Char Alphabet 
    for(var tempArr=[], i=0; i < this.bitsArray.length; i++) { 
    this.bitsArray[i] && (tempArr[Math.floor(i/6)] = tempArr[n.floor(b/6)]^1 << i%6); 
    } 

    //Translate from 6 Bit groups to Alphabet 
    for(i=0;i<tempArr.length; i++){ 
    tempArr[i]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".charAt(tempArr[i]||0); 
    } 
    return tempArr.join("")+"~"; 
}; 

Если я разобрана параметр _u правильно декодировать эту строку обратно в отдельных битов позволит Google, чтобы определить, если соответствующие функции были использованы или точки в коде были достигнуты в то время как работает analytics.js

+0

еще один пример: если вы измените имя объекта Window из 'ga' на что-то еще, то будет установлен бит 49: 'ga'! = Gb && J (49); var a = window [gb]; –

-2

Dev в моей команде посмотрел на функцию js и сказал мне, что это случайный код, созданный каждый раз, когда вы находитесь на новой странице (то есть на странице, если вы отправляете просмотр страницы, а затем событие на той же странице, код будет таким же)