认证Cron作业访问大查询

时间:2014-08-25 09:11:23

标签: google-app-engine python-2.7 google-bigquery

我正在尝试在Google App Engine中设置一个cron作业,该作业在同一域下的其他项目中具有对Big Query数据的读/写访问权限。 cron作业运行的Python模块没有用户交互或来自Web浏览器的任何其他输入,因此Big Query访问的身份验证不能基于用户的登录信息。在这种情况下实现身份验证的最佳方法是什么? 我在这里尝试了解决方案表单:Write Cron Job in Java on GAE to Run BigQuery

但是当我点击Big Query API时,它会给我401错误。

1 个答案:

答案 0 :(得分:0)

链接代码对我来说没有问题。

import httplib2
from apiclient.discovery import build
from oauth2client.appengine import AppAssertionCredentials

scope = 'https://www.googleapis.com/auth/bigquery'
credentials = AppAssertionCredentials(scope=scope)
http = credentials.authorize(httplib2.Http())

print build("bigquery", "v2", http=http).datasets().list(projectId='gdelt-bq').execute(http)

确保在项目控制台上激活BigQuery:

https://console.developers.google.com/project/YOUR_PROJECT/apiui/api