【发布时间】:2019-07-20 01:23:38
【问题描述】:
我想通过仅接受 REST 端点的网关路由我的 Google Analytics Reporting API 请求(代码将在 AWS Lambda 中)。由于在与网关的交互中无法使用 Client 封装方法,因此我需要将 API 作为 REST-ful 端点进行查询。
官方文档是这么说的(Link):
Authorization: Bearer {oauth2-token}
GET https://www.googleapis.com/analytics/v3/data/ga
?ids=ga:12345
&start-date=2008-10-01
&end-date=2008-10-31
&metrics=ga:sessions,ga:bounces
我不知道在 Python 中创建 oauth2-token。我创建了一个服务帐户并拥有包含客户端 ID 和密钥的 secrets_json。 然后这个link 中给出的客户端包方法起作用。但我只需要 Rest 方法!
使用这些,我如何创建 oauth2-token ?
【问题讨论】:
-
如果您要使用服务帐户,我建议您使用客户端库。如果你不能,那么我建议你试着把它拆开客户端库并找到他们正在使用的代码。这也可能会有所帮助developers.google.com/identity/protocols/OAuth2ServiceAccount祝你好运。服务帐号认证不是像oauth2这样简单的东西
-
@DaImTo 如果我不使用服务帐户还有其他方式吗?
-
使用 Oauth2 并对其进行一次身份验证并保存刷新令牌并在需要新访问令牌时使用它
-
@DaImTo 我明白,但我该怎么做呢?你能提供一个示例代码吗?这是脚本的一部分,意思是使过程自动化。所以没有手动用户身份验证。
标签: python google-analytics google-api google-oauth google-api-python-client