如何使用一个 OAuth 令牌通过 JavaScript API 访问 Google Analytics?

How to access Google Analytics through the JavaScript API with one OAuth token?

我正在开发一个页面,某些用户可以在其中查看共享的 Google Analytics 数据。我想用 JavaScript 提取数据,我已经成功地为包含 GA 数据的帐户获取了一个 OAuth 令牌,但它会在 1 小时后过期。

我如何为访问该页面的所有用户使用此令牌?我不需要用户能够访问他们自己的 GA 数据,只需要共享数据。有没有办法使令牌永久或刷新它?

下面我列出了三种不同的可能解决方案:

  1. 最简单的方法可能是授予所需用户对您要共享的视图(配置文件)的读取权限,并使用 embed API 对这些用户进行身份验证并显示该数据。

  2. 您可以考虑使用 Google Analytics Super proxy。 Google Analytics superProxy 允许您公开共享您的 Google Analytics 报告数据。您可以使用它来支持您自己的自定义仪表板和小部件、将响应转换为各种格式、测试等等。

  3. 或者您可以考虑使用 authenticated service account。 Google OAuth 2.0 系统支持服务器到服务器的交互,例如 Web 应用程序和 Google 服务之间的交互。对于这种情况,您需要一个服务帐户,这是一个属于您的应用程序而不是单个最终用户的帐户。您的应用程序代表服务帐户调用 Google API,因此用户不会直接参与。