1

.net Google APIを使用して、BigQuery対応のGoogleAPIプロジェクトにアクセスしようとしています。

コンソールアプリケーションを使用して、最初にURIで単純なAPIキーを指定して認証を試み、次にプロジェクトのリストを取得しようとしています。

プロジェクトリストでFetch()を呼び出すと、次のエラーが発生します。ログインが必要です[401]

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

ユーザーデータが必要ないため、意図的にOAuth2を使用していません。

4

2 に答える 2

2

APIキーは、割り当ての目的やその他のハウスキーピングのために、APIコンソールに対してアプリを識別するだけです。BigQueryデータは「ユーザーデータ」と見なされるため、BigQueryへのアクセスは許可されていません。

すばやくプレイするためにOAuth2アクセストークンを取得しようとしている場合は、OAuth 2プレイグラウンドを使用できます: https ://code.google.com/oauthplayground/

このトークンは1時間有効で、access_tokenクエリパラメータとしてコピー/貼り付けできます

遊び場で使用するBigQueryのスコープは次のとおりです。 https://www.googleapis.com/auth/bigquery

最後に、ネイティブクライアント(帯域外)フローを使用することをお勧めします: https ://developers.google.com/accounts/docs/OAuth2InstalledApp

または、サーバーからサーバー(サービスアカウント)へのフロー: https ://developers.google.com/accounts/docs/OAuth2ServiceAccount

.NETのサンプルに便利なクイックサンプルはありませんが、見つからない場合はSOに別の質問を投稿してください。誰かがチップインすると確信しています。

于 2012-08-09T21:14:56.820 に答える
0

単純なAPIキーを使用することはできません。BigQueryAPIへのすべての認証は、ユーザーの操作を介して、またはサービスアカウントを介して行う必要があります。

于 2012-08-09T21:10:32.530 に答える