Tag: firebase

Firebase云端function无法正常logging

我正在创build一个社交应用程序,在这个应用程序中,朋友可以通过他们的地址簿find对方。 基本上,我有两个长长的电话号码列表,我想使用firebase-cloud-function来查找两个列表中的所有数字。 为此,我将用户的所有联系信息发布到Firebase实时数据库,并触发云function(.onWrite)。 云function获取所有刚刚发布的电话号码,然后检索我的数据库中所有经过validation的电话号码,然后需要交叉引用这两个列表以查找所有匹配的电话号码。 这是我的代码… exports.crossReferenceContacts = functions.database.ref('/cross-ref-contacts/{userId}').onWrite(event => { //if it already existed then this function triggered beacuse we are calling set(null) and thus we dont want to proceed if (event.data.previous.exists()) { console.log("PREVIOUSLY EXISTED. RETURN NULL!!!"); return null; } const userId = event.params.userId; const userContacts = event.data.val(); var contactsOnPhone = []; var contactsVerifiedInDatabase =[]; […]

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

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

Firebase工具:以服务帐号login

我无法find如何代表服务帐户部署Firebase项目(function)的方式。 在文档页面上都没有说什么,也没有发现他们的错误跟踪器没有任何关系。 如上所述,我运行firebase login:ci命令,但后来我需要login自己 – 我想login为服务帐户。 这种function可以使用gcloud工具,但正如文档中所述 , 使用Firebase SDK for Cloud函数编写的云function无法使用gcloud命令行工具进行部署,反之亦然。

成功sendToDevice后,Firebase云消息传递不起作用

我使用Firebase云端function通过云端消息向iOS设备发送通知。 sendToDevice方法工作良好,并返回成功承诺,在Firebase函数日志中没有任何错误或警告,但在iOS上,不显示通知。 如果我通过Firebase通知信息中心发送通知,该通知很有用,并且会在设备上显示通知。 我不知道我在哪里可以有bug。 有可能是iOS应用程序端的错误,即使它像我说的那样工作? Firebaseconfiguration: var functions = require('firebase-functions'); var admin = require('firebase-admin'); var config = functions.config(); admin.initializeApp(functions.config().firebase); 部分云function: APP.services.firebase.admin.database().ref('tokens/' + userId).once('value', function(snapshot) { var userDevicesTokens = []; snapshot.forEach(function(childSnapshot) { userDevicesTokens.push(childSnapshot.key) }); if (userDevicesTokens.length === 0) { console.warn('No tokens for user'); return; } var payload = { data: { title: options.title, text: options.text, type: […]

如何在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,提前任何帮助。

从Firebase云端function连接到条带时出错

我正在尝试使用Firebase和Stripe从我的Android应用程序处理信用卡付款。 我已经在客户端上获取了一个Stripe标记,并且在我的Firebase Cloud Function中使用了一个数据库触发器来捕获新订单的发布时间。 这是我的function代码。 const stripe = require('stripe')('sk_test_XXXXXXXXXXXXXXXXXXXXXXXX'); return admin.database() .ref() .child('orders') .child(userId) .child(orderId) .child('token') .once('value') .then(snapshot => { return snapshot.val(); }) .then(token => { const amount = order.amount; console.log('Amount:', amount); console.log('token:', token.id); const idempotency_key = orderId; const source = token.id; const currency = 'usd'; const charge = {amount, currency, source}; return stripe.charges.create(charge, { […]

云function“event =>”文档

我对云function很陌生,我认为它们很酷。 我已经search了可以由“event”调用的方法的完整列表以及如何使用它们的文档,但是我没有find任何方法。 在下面的代码事件的例子是用来调用data.current.child等。有人可以帮助我find“事件”下方法的文档。 exports.getPath = functions.database.ref('/Transaction/{id}') .onWrite(event => { // Grab the current value of what was written to the Realtime Database. const trans = event.data.current.child('Request').val();