BigQuery NodeJs库-访问Google云端硬盘中的外部源时出错

时间:2020-03-28 16:09:29

标签: node.js google-cloud-platform google-bigquery node-modules

我正在尝试使用BigQueryNodeJS SDK中运行查询,但出现错误提示

“错误:未找到具有Google云端硬盘范围的OAuth令牌”。

该表是外部表,其源格式为GOOGLE_SHEETS

我使用以下代码配置了大型查询,并添加了其他范围。我的默认凭据可以访问驱动器。注意:bq命令正在运行。

const { BigQuery } = require('@google-cloud/bigquery');

const bigquery = new BigQuery({
    projectId: "my-dataset",
    scopes: [
        "https://www.googleapis.com/auth/drive.readonly"
    ],
});

我想念什么?有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

根据documentation,“在定义联合来源以及执行查询期间,访问Google云端硬盘中托管的数据都需要附加的OAuth范围”。

使用BigQuery API时,指出除了BigQuery的范围外,还需要请求Google云端硬盘的OAuth范围。在上述链接中,您还将找到使用其他语言显式创建具有所需范围的凭证的示例。

为了使事情变得容易,我建议您使用Google Auth Library,包括将其用作范围:

strings vmlinuz-4.x.y-z-a | grep 'linked,'