Articles of firebase database

Firebase set()承诺停留在挂起状态

我正在尝试简单地写入Firebase数据库,如下所示: return app.register( email, password ).then( f => { return app.login( email, password ) } ).then( f => { return app.currentUser() } ).then( user => { return app.firebase.db().ref( `users/${user.uid}` ).set( {color: 'red'} ) } ).then( f => { console.log( "This never triggers" ) } ) 其中app.register是: ( firebase, email, password ) => firebase.auth().createUserWithEmailAndPassword( email, password […]

使用Firebasefunction更新存储更改上的Firebase数据库

我试图在我的Android应用程序中实现configuration文件图片function。 所以我使用了来自Firebase的“ 生成缩略图”样本。 所以每当我上传一个完整大小的图片,它会为我生成缩略图。 但是我想要在缩略图生成后更新我的实时数据库中的缩略图的URL。 const functions = require('firebase-functions'); const mkdirp = require('mkdirp-promise'); const gcs = require('@google-cloud/storage')(); const spawn = require('child-process-promise').spawn; const LOCAL_TMP_FOLDER = '/tmp/'; // Max height and width of the thumbnail in pixels. const THUMB_MAX_HEIGHT = 100; const THUMB_MAX_WIDTH = 100; // Thumbnail prefix added to file names. const THUMB_PREFIX = 'thumb_'; /** […]

节点不会从Firebase数据库中移除?

我有以下数据结构: 不幸的是,“天”不会从下面的代码中删除数据库。 我目前的代码: const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); exports.deleteOldItems = functions.database.ref('/path/to/items/{pushId}') //irrelevant to the question .onWrite(event => { var ref = event.data.ref.parent; // reference to the items var now = Date.now(); var cutoff = now – 2 * 60 * 60 * 1000; var oldItemsQuery = ref.orderByChild('timestamp').endAt(cutoff); return oldItemsQuery.once('value', function(snapshot) { […]

如何从服务器端的Firebase数据库中检索上次创build的对象

如果这是非常简单的,我很新的Firebase云function。 我试图在我的数据库中接收最新的推送对象。 不幸的是,这个代码返回已经在'/ customers'的数据库中被推入的每个对象。 我已经尝试过了,但是那根本没有做任何事情。 exports.newCustomer = functions.database.ref('/customers/').onWrite(event => { console.log(event.data.val()); });

如何在firebase的云端函数中读取单个请求中多个用户ID的数据

我正在为我的Android应用程序和云function使用Firebase数据库。 由于Firebase以JSON格式存储数据。 每个用户都有一些分配给用户的唯一ID。 我想知道是否有任何方法可以在一个请求中获取多个用户数据。 如果你看到下面的代码,它将只获取传递的用户ID的数据。 db .ref("/users/" + request.query.userId) .once("value") .then(function(snapshot) { 我有10个用户标识符,我希望在nodejs中的单个请求中获取数据。 有什么办法得到这个?

Firebase的云端function:将整个数据库读入内存

我想将整个Firebase数据库从后端Cloud Function中读取到variables中,如下所示: exports.transformUserData = functions.https.onRequest((request, response) => { admin.database().ref('/').on('value', function (snapshot) { var dbData = snapshot.val(); … }); … }); 这安全吗? (从内存或美元成本的angular度来看,速度在这种情况下不是问题)。 我预计,由于内存不足错误,一旦数据库增长,函数就会崩溃。 如果是这样,在什么样的内存限制下,我们可以期望它崩溃? (例如10MB )。 提前感谢您的任何build议!

如何从Firebase数据库获取值并将其分配给Firebase云端函数中的值?

所以我使用firebase作为一个演示应用程序的后端,我喜欢这个堆栈,但我挂在一个问题上,我无法弄清楚如何从数据库中检索值(我已经有钥匙就好)。 简而言之,我正在从一个设备发送信息,其中包含正在尝试访问的其他设备的“友好名称”。 function代码如下所示: exports.connectMe = functions.https.onRequest((req, res) => { cors(req, res, () => { admin.database().ref('calls/' + req.body.id + '/').set({ target: req.body.target, caller: req.body.caller, time: req.body.time }); const target = req.body.target; console.log(`target: ${target}`); const targetCall = admin.database().ref(`tokens/${target}/token`); console.log(targetCall); // const targetValue = targetCall.val(); res.status(200).send("Thanks For The Call!"); }); }); variables,targetCall正确地指向我想要达到的数据库条目,但我无法提取我的生活价值。 位于admin.database.ref的令牌需要放在一个http请求中。 我如何获得价值? 注释掉的代码显示了我想要存储的variables,但是我知道.val()不是一个引用方法。 为了logging, admin被设置为require('firebase-admin'); 在代码之前。

firebase-admin WebSocket错误

我有firebase-admin的问题。 显然我不能build立与Firebase的WebSocket连接。 var admin = require("firebase-admin"); var serviceAccount = require("./realtimedemo-c6eae-firebase-adminsdk.json"); admin.initializeApp({ credential: admin.credential.cert(serviceAccount), databaseURL: "https://realtimedemo-c6eae.firebaseapp.com" }); admin.database.enableLogging(true) var defaultDatabase = admin.database(); var ref = defaultDatabase.ref(); ref.on("value", function(snapshot) { console.log(snapshot.val()); }, function (errorObject) { console.log("The read failed: " + errorObject.code); }); thx,提前任何帮助。

是否可以在本地testingFirebase触发器?

使用firebase-functions与节点和exports.foo = functions.database.ref('/object').onWrite(event => {}); 。 我可以部署到云和testing就好了…我可以很容易地在本地使用firebase serve –only functionstestingHTTPtypes的firebase serve –only functions 。 但是,我没有看到本地testing触发器的方法。 可能吗? 怎么样?

当每个函数结束时需要执行函数

我有节点js / firebase中的这个代码: ref.child("recipts").once("value", function(usersSnap) { usersSnap.forEach(function(reciptsSnap) { reciptsSnap.forEach(function(reciptSnap) { reciptSnap.ref.child("last_recipt").once("value", function(b) { b.forEach(function(c) { //Here I fill some "product" object }); }); reciptSnap.forEach(function(b) { //Here I fill some "product" object }); }); }); }); 当“reciptSnap”forEachs完成时,我需要执行一个函数。 我怎样才能做到这一点,我尝试使用variablesi ++和i–但只适用于每个迭代。 我调用的函数是用forEachs循环中的填充数据操纵我创build的产品对象。