2016-08-26 4 views
1

私はnode.jsとGoogleのbigQueryを試しています。パブリックデータセットと個々のデータセットの詳細を取得するリクエストを正常に作成できますが、 400 'Required parameter is missing'が表示されますが、どのパラメータが表示されるのかわかりません。私のコードは以下の通りです:BigQueryへのHTTPSクエリ - 必須パラメータがありません

var options = { 
    host: 'www.googleapis.com', 
    headers: {'Authorization': 'Bearer ' + accessCode}, 
    path: '/bigquery/v2/projects/bigquery-public-data/queries', 
    method: 'POST' 
}; 

var query = { 
    kind: 'bigquery#queryRequest', 
    query: "SELECT * FROM [hacker_news.full_201510]", 
    maxResults: 10, 
    defaultDataset: { 
    datasetId: 'hacker_news', 
    projectId: 'bigquery-public-data' 
    }, 
    timeoutMs: 10000, 
    dryRun: true, 
    useQueryCache: true, 
    useLegacySql: true 
}; 

var callback = function(response) { 
    var str = ''; 

    response.on('data', function (chunk) { 
    str += chunk; 
    }); 

    response.on('end', function() { 
    console.log(str); 
    }); 
} 

var req = http.request(options, callback); 
req.write(JSON.stringify(query)); 
req.end(); 

何か提案がありますか?

答えて

0

あなたは、このドキュメントから必要なすべてのパラメータが含まれているように見える: https://cloud.google.com/bigquery/docs/reference/v2/jobs/query

私の提案は、あなたがこれらの要求をクラフトに手に持っていないように、Node.jsのクライアントライブラリを使用することです。

この文書では、下にスクロールして例を選択するとnode.js.

+0

ご回答いただきありがとうございます。リクエストを手作りするには2つの理由があります。まず、APIをよりよく理解すること.2番目に最終的なターゲット言語にはライブラリのサポートがないこと。 – Chris

関連する問題