Google BigQuery запрос по функциям Firebase - PullRequest
0 голосов
/ 05 декабря 2018

Я пытаюсь получить данные из базы данных Google BigQuery в своих облачных функциях Firebase.

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);
    }
   });
  }
});

Результаты всегда равны нулю.Таблица не пуста.

1 Ответ

0 голосов
/ 06 декабря 2018

Глядя на определение BigQuery.query() , он ожидает, что обратный вызов имеет подпись (err, rows), поэтому похоже, что ваш обратный вызов смотрит на ошибку, а не на фактические результаты.Попробуйте:

bigquery.query(query, (err, results) => {
    console.log("results", results);
    res.send(results);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...