среда, 21 августа 2013 г.

Tip #4: Oracle WebDB + Google Analytics

Имеем на сайте интегрированный через iframe внутренний сервис компании, в src в урле указаны заранее сформированные get параметры.

Следуя рекомендации Google Analytics, оформляем это хозяйство следующим образом:

_gaq.push(function() {
  var pageTracker = _gat._getTrackerByName();
  var iframe = document.getElementById('myIFrame');
  iframe.src = pageTracker._getLinkerUrl('http://www.my-example-iframecontent.com/');
});
Казалось бы, все должно заработать. Ан нет. GA дописывает в качестве get параметров при вызове этого ифрейма содержимое своих кук, типа utma и остальных.

И Oracle WebDB, который является фактически фронтэндом напрямую в базу данных, сыпется от того, что ему приходят лишние данные, на которые он мягко говоря не рассчитывает. Причем, разумеется, он даже не разбирает строку по принципу key-value, он ориентируется на порядок объявления переменных в строке.

Слава богу, есть красивый workaround: использовать передачу параметров через #


parameters

String   targetUrl URL of target site to send cookie values to.
Boolean   useHash Set to true for passing tracking code variables by using the # anchor tag separator rather than the default ? query string separator.

Соответственно, передача параметров происходит на client-side.

Комментариев нет:

Отправить комментарий