【发布时间】:2021-04-15 17:19:48
【问题描述】:
我想在触发 Firebase 功能时打开与用户手机上预先存在的数据库的数据库连接。
const functions = require('firebase-functions');
const admin = require('firebase-admin');
exports.messageTrigger = functions.firestore.document('newspapers/{articleNr}/articles/{articleNr}').onCreate(
async (snapshot, _) => {
if (!snapshot.exists) {
console.log('No article found');
return;
}
console.log('Received');
newData = snapshot.data();
let articleNr= snapshot.ref.parent.parent.id;
console.log('articleNris ' + articleNr);
let db = openDatabase('TestDB13', '1.0', 'Test DB', 2 * 1024 * 1024);
db.transaction(function (tx) {
tx.executeSql('SELECT * FROM Article', [], function (tx, results) {
console.log(results.rows.item(0));
});
});
}
目前我在 Firebase 函数日志中收到错误消息:“ReferenceError: openDatabase is not defined”。
甚至可以通过index.js文件访问sqlite数据库吗?
【问题讨论】:
-
openDatabase is not defined错误是因为没有定义openDatabase函数。也许该函数在其他地方声明,您需要require才能在此文件中访问它? -
这个问题似乎与 firebase 或 google-cloud-functions 没有任何关系。如果看起来您也没有尝试通过 Firebase Functions 连接到 sqlite。您似乎在问如何(通常)连接到 sqlite 数据库。这是正确的还是有更多的问题?我想确保答案能回答正确的问题。
标签: android node.js firebase flutter google-cloud-functions