如何在不使用环境变量的情况下使用凭据访问Google Datastore API?

时间:2017-07-24 19:19:14

标签: google-app-engine authentication google-cloud-datastore google-cloud-platform

目前我通过GOOGLE_APPLICATION_CREDENTIALS环境变量访问API。我创建并下载了一个服务帐户密钥作为.json文件,并将环境变量设置为该文件。由于我正在进行的项目的要求,我将无法做到这一点。我尝试在数据存储区客户端对象的构造函数中使用凭证变量,但我无法使其工作。我该怎么办呢?

我正在运行Windows 10,但任何解决方案都应该(相对)操作系统不可知。我正在写python 3.6。

1 个答案:

答案 0 :(得分:2)

您可以使用from_service_account_json()

from google.cloud import datastore

client = datastore.Client.from_service_account_json('/path/to/credentials.json')
var = client.get(client.key('MyKind', '<key value>'))
print(var)

请参阅:https://cloud.google.com/docs/authentication/production#obtaining_and_providing_service_account_credentials_manually