当前位置: 首页 > 知识库问答 >
问题:

为我的google服务帐户获取授权令牌密钥

许安邦
2023-03-14

实际上,我想使用这个api回复我的google play应用程序的评论:https://developers.google.com/android-publisher/reply-to-reviews#gaining_access但是在这里,它想让我输入auth_token。首先,我在google play中添加了服务号。之后,我创建了一个密钥,并下载了密钥的json文件。使用这个json文件,我试图获得auth。令牌,但此代码的输出告诉我凭据无效,令牌为“无”。我想解决这个问题。谢谢。

from google.oauth2 import service_account
import googleapiclient.discovery

SCOPES = ['https://www.googleapis.com/auth/cloud-platform',
          'https://oauth2.googleapis.com/token',
          'https://accounts.google.com/o/oauth2/auth',
          'https://www.googleapis.com/oauth2/v1/certs',
          'https://www.googleapis.com/robot/v1/metadata/x509/myusername.gserviceaccount.com']
SERVICE_ACCOUNT_FILE = 'service.json'

credentials = service_account.Credentials.from_service_account_file(
        SERVICE_ACCOUNT_FILE, scopes=SCOPES)

print(credentials._token_uri)
print(dir(credentials))
print(credentials.valid)
print(credentials.token)

https://developers.google.com/identity/protocols/oauth2#serviceaccount https://developers.google.com/identity/protocols/oauth2/service-account#python_1 https://developers.google.com/android-publisher/reply-to-reviews#gaining_access

注意:人们也像这样发送他们的API请求:

service = build('drive', 'v3', credentials=credentials)

例如,上面的代码用于发送google drive的api请求。如何使用api来实现我的目的?例如,我想使用“build”访问google play api。

共有1个答案

微生学
2023-03-14

构建方法的关键是,它首先采用API,然后采用要访问的API版本,然后是您的凭据。

service = build('drive', 'v3', credentials=credentials)

如果您查看Discovery服务,您会发现所有google apis的列表

Android发布者的条目如下

 {
      "kind": "discovery#directoryItem",
      "id": "androidpublisher:v3",
      "name": "androidpublisher",
      "version": "v3",
      "title": "Google Play Android Developer API",
      "description": "Lets Android application developers access their Google Play accounts.",
      "discoveryRestUrl": "https://androidpublisher.googleapis.com/$discovery/rest?version=v3",
      "icons": {
        "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png",
        "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png"
      },
      "documentationLink": "https://developers.google.com/android-publisher",
      "preferred": true
    },

也就是说下面的应该就是你要找的。

service = build('androidpublisher', 'v3', credentials=credentials)
 类似资料:
  • 如何在Ruby中为Google Calendar API授权服务帐户?我试过快速入门指南,但失败了。 https://developers.google.com/calendar/quickstart/ruby#step_3_set_up_the_sample 用于授权服务帐户的(过时的)文档只有Java和Python的示例。 https://developers.google.com/ident

  • 我们正在尝试创建一个与谷歌管理SDK的集成,以便能够检索,更新和创建帐户在我们的领域。但是,我们不断收到一个403错误,表明我们没有被授权访问Resource/API。 我们正在使用从一个服务帐户获得的凭据,该帐户启用了域范围的授权,并且具有以下两个作用域:https://www.googleapis.com/auth/admin.directory.user.readonly,https://w

  • 我正在开发一个android应用程序,它有可能提供大量的统计信息。我想把这些数据保存在我的谷歌硬盘上,以便以后分析。 然而,我对谷歌API是新手,几乎不知道如何通过编程方式授权我的帐户。这是我到目前为止的情况。 代码运行成功,文件已在设备上创建,但我想将其发送到我的google驱动器。 我认为主要问题是我不知道帐户名称凭据应该是什么。我有一种感觉,它不是“myacc@gmail.com”。有什么方

  • 问题内容: 有人可以告诉我如何从Google Cloud Console下载该服务帐户的证书吗?我到处搜寻。我已经下载了应用程序授权证书“ client_secret.json” client_secret.json具有一个密钥“ client_x509_cert_url”密钥,该密钥将我带到其中嵌入了2个证书的json文件。这是证书吗?如果他们是我如何在Java代码中使用它。我在这里迷路了。 问

  • 我遇到了使用文档签名 API 的第一个障碍,需要一些帮助。 我将docusignrestapi集合导入到Postman中。我设置了iKey、iSec、encodedKeys和codeFromUrl变量。 当尝试发送'01-授权代码授予访问令牌'post API时,我每次都得到以下响应。 我尝试从Postman中删除所有内容,包括环境,并从DocuSign中删除该应用程序,然后重新开始,以便我的所有

  • 之后,我得到以下错误: 我们使用的是restapi.php (a)我们使用的是G套件“基本版”;那有什么限制吗?(b)我们从PHP(7.0)环境中调用G-Suite API;是否有任何已知的问题,因为环境仍然标记为'(Beta)'。(c)是否有任何样例/教程可以给出解决我们问题的指针。