如何使用getClientIdFromUrl()从URL设置clientId

时间:2017-06-07 17:52:11

标签: javascript google-analytics

如何从网址“site.com/?clientId=1576731351.1495454236”设置客户端ID

我尝试使用

ga('create', 'UA-XXXXX-Y', 'auto', {
  'clientId': getClientIdFromUrl()
});

但错误:

  

未捕获的ReferenceError:未定义getClientIdFromUrl

如何设置clientId?如何定义 getClientIdFromUrl ? 我从官方google页面https://developers.google.com/analytics/devguides/collection/analyticsjs/cross-domain#setting_the_client_id_on_the_destination_domain

获取此代码

1 个答案:

答案 0 :(得分:2)

这似乎直接来自通用文档中的示例。此功能未定义您应该自己定义它。以下是此other StackOverflow question的示例定义。

function getClientIdFromUrl() {
    var url = window.location.href;
    var regex = new RegExp("[?&]clientId(=([^&#]*)|&|#|$)"),
        results = regex.exec(url);
    if (!results) return null;
    if (!results[2]) return '';
    return decodeURIComponent(results[2].replace(/\+/g, " "));
}

据说这在Google Analytics实施中相当不寻常。您还没有对您的用例分享太多信息,但如果您要做的只是将clientIds从一个域传递到另一个域,我会看看Linker插件。