6

我有一个网站,其中大部分流量来自 API ( http://untiny.com/api/ )。我使用 Google Analytics 收集流量数据,但是统计数据不包括 API 流量,因为我无法将 Google Analytics javascript 代码包含到 API 页面中,并且包含它会影响 API 结果。(例如:http ://untiny.com/api/1.0/extract/?url=tinyurl.com/123 )。

解决方案可能是使用 javascript 引擎执行 javascript。我搜索了stackoverflow并找到了Java和C的javascript引擎/解释器,但是除了一个旧的“J4P5” http://j4p5.sourceforge.net/index.php之外我找不到一个用于PHP的引擎/解释器

问题:使用javascript引擎会解决问题吗?或者还有其他为什么要将 API 流量包含到 Google Analytics 中?

4

4 回答 4

2

我花了很长时间研究这个,终于找到了一个看起来很完美的开源项目,虽然完全不为人知。

http://code.google.com/p/serversidegoogleanalytics/

将报告结果。

于 2009-08-01T14:34:29.120 回答
2

一般而言,一个简单的问题是,您获得的任何数据都可能非常具有误导性。

很多时候,可能是其他服务器调用您的服务器。当这是真的时,服务器的位置绝不代表使用它的人的位置,用户代理将是假的,你无法分辨有多少不同的人实际使用该服务。没有推荐人,如果有,他们可能是假的……等等。在这种情况下,没有多少统计数据是有用的。

也许制作一个记录 IP 和其他标头信息的 PHP 后端,这就是你所能做的。您至少可以跟踪对 API 的总调用,以及它们的来源(尽管同样,可能来自服务器,但您可以分辨出哪些服务器)。

于 2009-07-12T18:34:58.697 回答
1

您可能必须使用您使用的任何编程语言来模拟服务器端的所有 http 调用.....但这不会为您提供有关谁在使用它的信息,除非 untiny 通过某种标头提供客户端信息。

如果您想纯粹出于统计目的将其包含在内,如果您在服务器端检测到 untiny,可以尝试使用 curl(如果使用 php)访问 gif 文件

http://code.google.com/apis/analytics/docs/tracking/gaTrackingTroubleshooting.html#gifParameters

于 2009-07-01T21:17:27.260 回答
0

您不能轻易做到这一点,因为最终用户不会运行基于 Javascript 的 Google Analytics 脚本(当然,除非他们将您的 API 输出完全包含在向最终用户显示的内容中:这将否定完全成熟的 API [您可以只提供 iframeable 代码],可能带来安全风险,并可能违反浏览器跨域 javascript 检查)。

您最好的解决方案是使用服务器端分析(例如带有 Analog、Webalizer 或 Awstats 的 Apache 或 IIS 的服务器日志),或者 - 因为您从 API 调用中获得的大部分信息将是用户代理、请求和 IP 地址 - 只是在调用 API 时将该信息记录在数据库中。

于 2009-07-11T17:01:35.180 回答