javascript - 如何构建 'real time visitors on site' ,Google API?

标签 javascript ruby-on-rails google-analytics google-api google-analytics-api

我正在为我们网站上创建帖子的用户构建一个自定义管理仪表板。我只想向他们显示他们的帖子(而不是整个网站)的活跃访问者数量。

我希望它的行为与 GA 完全一样:

enter image description here

我本来想从头开始构建这个,但回想起来使用 GA API 可能更容易?

我一直盯着文档看,但我就是不明白,所以我来这里寻求帮助。

我们总共有大约 5,000 篇帖子,我网站上的一些人已经撰写了 1000 多篇帖子,因此 GA 的“输入”将是 1 到 1000 多个 slug(仅针对他们的帖子)。

我只希望他们的帖子获得现场流量的总和。

可选,也许它必须被逆转......我不确定 GA 是否可以显示它,但更好的可能是从 API 获得实时访问者的内容分割,最多 5000 个结果。从那里我可以过滤结果集 slug(以及每个 slug 的用户数量),并将这些结果与属于该用户的每个 slug 进行比较,然后在我这边对总数求和。

这是 Google API 可以帮我解决的问题吗?我需要使用哪个 API 端点?是否有可能从 API 获得 5000 多个具有流量的 URL 的最大结果?

谢谢!

最佳答案

是的,这是可能的。

看来你应该利用Real Time Data: get端点。

此外,要仅限制特定页面(帖子)的结果,您应该使用维度过滤器(在计算聚合结果之前仅选择特定页面 View 的过滤器),并且“ga:pagePath”看起来像您需要的那个:

ga:pagePath

UI Name: Page A page on your website specified by path and/or query parameters. Use in conjunction with hostname to get the full URL of the page.

Source

您可能更喜欢使用 ga:pageTitle相反,如果您对单个作者的帖子有相似的标题,并且在同一作者的帖子中没有公共(public)路径元素。

所以你做这样的事情:

GET https://www.googleapis.com/analytics/v3/data/realtime
ids=ga:<your_analytics_id>
metrics=rt:activeUsers
dimensions=rt:pagePath
filters=rt:pagePath=~/authors/123/*

请注意,实时和非实时 API 可能存在细微差别(例如,使用“rt”而不是上面的“ga”),通常实时 API 仍处于测试阶段。

一般来说,你应该去这里:Real Time Reporting API - Developer Guide并查看目录(页面左侧)中的链接。

关于“从头开始构建”的想法:从开发人员的 Angular 来看它相当简单,但从开发运营的 Angular 来看可能很复杂。也就是说,编写聚合此类指标的代码不是问题。但是,构建一个能够维持该任务每秒所需请求量的系统可能是个问题。

关于javascript - 如何构建 'real time visitors on site' ,Google API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31775736/

相关文章:

javascript - 仅当源更改时 window.focus()

javascript - 组件不渲染使用 <Link> 时创建的最新数据

ruby-on-rails - 如何调试 Rails 中的 Trace/BPT Trap 错误?

c# - 编程 float 运动

javascript - 从指令设置 ngModel 时的范围问题

ruby-on-rails - 使用后台 worker 缓存片段

ruby-on-rails - 检查 "nil"字符串的简洁方法

ios - 如何在 iOS 中跟踪表中的行选择事件

firebase - 有多少客户端连接到我的 Firestore?

google-analytics - Google Analytics(分析)搜索并替换可以删除端口号的正则表达式过滤器