Sex*_*yMF 5 javascript google-analytics
每当Google Analytics(分析)将数据发送到服务器时,我都希望获得回调。我也想将相同的数据发送到我的服务器。有可能吗?
https://jsfiddle.net/bk1j8u7o/2/
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-143361924-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-143361924-1');
</script>
Run Code Online (Sandbox Code Playgroud)
Google 实际上是使用 gif 将数据同步到其服务器,因此拦截 XHR 请求将不起作用。
在analytics.js中有一个官方的方法可以做到这一点。通过 Tasks,这是一些未经测试的小示例:
ga(function(tracker) {
var originalSendHitTask = tracker.get('sendHitTask');
tracker.set('sendHitTask', function(model) {
var payLoad = model.get('hitPayload');
originalSendHitTask(model);
var gifRequest = new XMLHttpRequest();
var gifPath = "http://localhost/collect";
gifRequest.open('get', gifPath + '?' + payLoad, true);
gifRequest.send();
});
});
Run Code Online (Sandbox Code Playgroud)
确保执行此代码后发送 pageView。
归档时间: |
|
查看次数: |
243 次 |
最近记录: |