【问题标题】:getting a google analytics access token and how to use it in google sheets script获取谷歌分析访问令牌以及如何在谷歌表格脚本中使用它
【发布时间】:2017-06-08 17:44:33
【问题描述】:

我目前正在从谷歌的查询资源管理器的 API 查询 URI 中提取数据。 https://ga-dev-tools.appspot.com/query-explorer/ 可以在这里包含一个 60 分钟的访问令牌。

现在我想要一个永不过期的访问令牌,并从谷歌获得 API 项目网站,并且我已经生成了一个客户端 ID 和密码。

我尝试将 client_id 和 client_secret 作为参数添加到 url,如下所示: url&client_id=xxx&client_secret=yyy

这不起作用。

如何在 Google (Sheets) 脚本中生成有效的访问令牌?

谢谢

【问题讨论】:

  • 我可能理解错了你所追求的,但如果你通过脚本编辑器启用谷歌分析服务(服务也必须在 API 控制台中启用),那么你可以让脚本作为活动运行用户(或所有者,如果它通过触发器无人值守运行)。这需要身份验证,因此您不需要令牌。

标签: javascript google-analytics google-sheets google-analytics-api


【解决方案1】:

我认为你需要从头开始。

要获取访问令牌,您需要使用客户端 ID 和客户端密码来请求用户访问。当用户授予您的应用程序访问权限时,您将获得一个访问令牌。一个很好的起点Using OAuth 2.0 to Access Google APIs

用法:

RestRequesturl?access_token=[yourtoken]

当您请求用户访问权限时,您向其发送范围,范围表示您的应用程序需要什么样的访问权限。 Google here 的范围很大,在您的情况下,您需要请求 Google 分析的范围和 google 表格的范围,这将允许您访问用户的 google 分析帐户和他们的 Google 表格。

正如您所知,访问令牌会在一小时后过期,因为您需要刷新令牌,刷新令牌将允许您请求身份验证服务器的新访问令牌,而无需再次为用户请求访问权限。我不是 JS 开发人员,但我知道你可以使用 node.js 获得刷新令牌,但我认为你不能使用纯 js。

我有一个教程系列可以帮助您快速上手。 Google development for beginners 阅读 Oauth2 上的文章可能会对您有所帮助。 Google Developer console oauth2

【讨论】:

  • 感谢您的帮助,我已经通过使用 Google 高级 Google 服务中的构建来实现它。启用此功能后,身份验证由驱动器本身完成,而不是由我的代码完成。我会批准您的回答,因为它是我最初问题的有效解决方案。谢谢
猜你喜欢
  • 2019-07-07
  • 2017-11-13
  • 2013-07-20
  • 2018-07-24
  • 2017-09-15
  • 2016-05-09
  • 2017-04-23
  • 2016-04-19
  • 2018-09-25
相关资源
最近更新 更多