使用带有Google表格的BigQuery API时出现“在文件模式时出现错误”错误

时间:2016-11-22 00:19:19

标签: google-drive-api google-bigquery google-sheets-api

尝试从BigQuery API访问联合来源(Google表格)时,会引发以下错误:

[..]
 "errorResult" : {
      "location" : "/gdrive/id/<removed_file_id>",
      "message" : "Encountered an error while globbing file pattern.",
      "reason" : "invalid"
    }
[..]

BigQuery中的表设置为指向此文件。它通过Web UI工作。只有在尝试通过API查询表时,才会出现上述错误。

我猜它与权限有关。需要做些什么来允许从作为联合源(指向Google表格)的API访问BigQuery表?

1 个答案:

答案 0 :(得分:4)

允许API在BigQuery中查询联合表时,需要遵循3个步骤 - 指向Drive中的文件,即Google表格。

记录了其中两个步骤here(我错过了第二个步骤 - 添加了驱动器范围)。最后一个是添加用于访问文件本身的API的关联服务帐户电子邮件。

  1. 使用Google Cloud Platform Console enable the Google Drive API进行API调用。
  2. 除了BigQuery的范围之外,还请求OAuth scope for Google Drive
  3. 将您正在使用的服务帐户电子邮件添加到云端硬盘中的文件中。它看起来像<project-id>-<fingerprint-hash>@developer.gserviceaccount.com。 &#34;查看&#34;许可就够了。