6

我的网络服务器上有一个 API,可以访问网站数据库中的数据。我试图弄清楚如何使用谷歌分析来跟踪 API 使用情况。访问 API 响应的客户端将无法执行 javascript。

我已经尝试https://developers.google.com/analytics/devguides/collection/other/mobileWebsites做服务器端,但由于我的 API 无法打开任何图像,它不会工作。有什么想法吗?

API 示例是http://www.serviidb.com/api/video

4

3 回答 3

6

如果您已更新到 Universal Analytics(新的 Google Analytics),您可以直接从 PHP 生成事件或综合浏览量。

Google 创建了Measurement 协议,该协议基本上是一组 http 请求,其中包含一些包含您要跟踪的内容的参数。我将在此处粘贴我在自己的站点中用于跟踪下载的代码。

要跟踪任何内容,您只需使用自己的参数调用 AnalyticsDoHit():

// Create a page view directly from PHP. No javascript.
function AnalyticsDoHit($tid, $slug, $title)
{
// Standard params
$v   = 1;
$cid = ParseOrCreateAnalyticsCookie();

// Send PageView hit
$data = array(
    'v' => $v,
    'tid' => $tid,
    'cid' => $cid,
    't' => 'pageview',
    'dt' => $title,
    'dp' => $slug
);

$getString = 'https://ssl.google-analytics.com/collect';
$getString .= '?payload_data&';
$getString .= http_build_query($data);
file_get_contents($getString); // do the https request
}


// Gets the current Analytics session identifier or create a new one
// if it does not exist
function ParseOrCreateAnalyticsCookie()
{
if (isset($_COOKIE['_ga']))
    {
    // An analytics cookie is found
    list($version, $domainDepth, $cid1, $cid2) = preg_split('[\.]', $_COOKIE["_ga"], 4);
    $contents = array(
        'version' => $version,
        'domainDepth' => $domainDepth,
        'cid' => $cid1 . '.' . $cid2
    );
    $cid      = $contents['cid'];
    }
else
    {
    // no analytics cookie is found. Create a new one
    $cid1 = mt_rand(0, 2147483647);
    $cid2 = mt_rand(0, 2147483647);

    $cid = $cid1 . '.' . $cid2;
    setcookie('_ga', 'GA1.2.' . $cid, time() + 60 * 60 * 24 * 365 * 2, '/');
    }
return $cid;
}

按如下方式使用它:

AnalyticsDoHit("UA-XXXXXX-X", "http://www.AutomatedEmailParser.com/EmailAndParser_setup.msi", "EmailAndParser_setup.msi");
于 2013-12-10T12:03:17.010 回答
1

查看 Universal Analytics https://developers.google.com/analytics/devguides/collection/protocol/v1/http://code.google.com/p/php-ga/以在 PHP 中模拟 ga.js 服务器端

于 2013-03-13T17:07:45.437 回答
1

我使用的是用于 PHP 的 Google Analytics Measurement Protocol 库,它包含 Laravel、Yii 等许多框架的包装器。

您可以衡量 API 使用情况、电子商务事件或任何您需要的东西。您还可以发送异步请求。

于 2017-08-11T20:07:05.557 回答