BigQuery简单Api身份验证

时间:2012-08-09 10:29:11

标签: httpwebrequest google-api google-bigquery

我正在尝试使用.net Google API访问启用了BigQuery的Google API项目。

使用控制台应用程序,我首先尝试通过在URI中提供我的简单API密钥来进行身份验证,然后尝试获取项目列表。

我在项目列表上调用Fetch()时收到的错误是:需要登录[401]

var bigqueryService = new BigqueryService{ Key = "MY-API_KEY" };
var projectList = bigqueryService.Projects.List().Fetch();

我故意不使用OAuth2,因为我们不需要任何用户数据。

2 个答案:

答案 0 :(得分:2)

API密钥只是将您的应用程序标识到API控制台以进行配额和其他内务管理。它不是访问BigQuery的权威,因为我们将BigQuery数据视为“用户数据”。

如果您只想尝试使用OAuth 2访问令牌进行快速播放,则可以使用OAuth 2游乐场: https://code.google.com/oauthplayground/

此令牌有效期为一小时,可以复制/粘贴为access_token查询参数

以下是BigQuery在游乐场中使用的范围: https://www.googleapis.com/auth/bigquery

最后,您要么想要使用本机客户端(带外)流程: https://developers.google.com/accounts/docs/OAuth2InstalledApp

或服务器到服务器(服务帐户)流程: https://developers.google.com/accounts/docs/OAuth2ServiceAccount

我没有为.NET中的人提供快速的样本,但是如果你找不到它们就会发布另一个问题 - 我相信有人会参与进来!

答案 1 :(得分:0)

您将无法使用简单的API密钥 - 所有对BigQuery API的授权都必须通过用户交互或服务帐户进行。