【问题标题】:google bigquery query on firebase functionsgoogle bigquery 对 firebase 函数的查询
【发布时间】:2018-12-05 13:48:59
【问题描述】:

我尝试在我的 firebase 云功能中从 google bigquery 数据库获取数据。

exports.corsEnabledFunction = functions.https.onRequest((req, res) => {

  res.set("Access-Control-Allow-Origin", "*");

  if (req.method === "OPTIONS") {
    // Send response to OPTIONS requests
    res.set("Access-Control-Allow-Methods", "GET");
    res.set("Access-Control-Allow-Headers", "Content-Type");
    res.set("Access-Control-Max-Age", "3600");
    res.status(204).send("");
  } else {
    // Set CORS headers for the main request

    res.set("Access-Control-Allow-Origin", "*");
    let bigquery = new BigQuery();
    const query = "SELECT * FROM `mydb-2094d.logs.eventlogs` LIMIT 10";
    bigquery.query(query, (err, results) => {
       if (err) {
           console.log("error", err);
       }

       console.log("results", results);
       res.send(results);
    }
   });
  }
});

结果始终为空。该表不为空。

【问题讨论】:

  • 您能否编辑问题以显示无法按您期望的方式工作的整个最小功能,以及它生成的所有日志?
  • 我编辑了,但认为它没有帮助
  • 能否也显示日志?

标签: google-bigquery google-cloud-functions


【解决方案1】:

查看BigQuery.query() definition 它期望回调具有签名(err, rows),因此看起来您的回调正在查看错误而不是实际结果。试试:

bigquery.query(query, (err, results) => {
    console.log("results", results);
    res.send(results);
}

【讨论】:

    猜你喜欢
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-23
    • 2014-05-23
    • 2021-02-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多