Articles of firebase admin

Firebasepipe理员SDK – DELETE响应不正确

我是新来的JavaScript(但不是新的编程)。 我正在使用NodeJs中的Firebase ADMIN SDK创build一个REST API。 如果资源存在,我能够成功执行DELETE请求。 但如果不存在(或者ID不正确),POSTMAN的响应仍然是成功的。 我想这个callback函数是不正确的。 当我实现GET /:id和PUT /:id时,我可能会看到相同的问题。 请帮忙。 // DELETE /api/billingPlans/:id // Delete a billing plan routes.delete('/:id', (req, res) => { var ref = admin.database().ref(firebaseNode); //Have also tried snapshot.exists() but similar problem occurs return ref.child(req.params.id).once('value', function(snapshot) { snapshot.ref.remove(function(error){ if(!error) res.status(200).json({"result" : "DELETE Success"}); else res.status(204).json({"error" : "Not found"}); }); });

pipe理FCM设备组服务器端

我正在寻找一种方法来pipe理FCM设备组服务器端,希望通过使用node.js firebase-admin库。 就我所见,实现这一目标的唯一方法是使用基于GCM的旧restterminalPOST: https://android.googleapis.com/gcm/notification 但是,我不觉得使用这个gcm系统是不自信的。 我已经通过github回购search,cound似乎没有find任何Device Groups任何地方。 这个function是不是应该被使用了吗? 或者是由于某种原因可能没有logging,或者被忽略了? 我知道,创build设备组是可以在客户端实现的,但似乎要求用户有一个谷歌帐户,这不幸的是在我的情况下,我不能假设。 从https://firebase.google.com/docs/cloud-messaging/android/device-group#managing_device_groups 要在客户端上创build设备组,该设备必须至less有一个Google帐户。

通过电子邮件创build的Firebase-Admin用户显示为匿名

我用一个最小的(名字/电子邮件/密码)表单使用admin sdk。 用提供的电子邮件创build的用户仍然在控制台中匿名显示。 我的代码:(NodeJs) const admin = require('firebase-admin'); const secret = require('./../credentials/server'); admin.initializeApp({ credential: admin.credential.cert(secret), databaseURL: 'url', }); module.exports = (user) => { admin.auth().createUser({ email: user.email, password: user.password, displayName: user.name, }) .then((userRecord) => { // See the UserRecord reference doc for the contents of userRecord. console.log('Successfully created new user:', userRecord.uid); }) .catch((error) => { console.log('Error […]

Admin SDK Auth错误,错误的错误代码

我正在使用Admin SDK,Authfunction。 当调用admin.auth().verifyIdToken(token)并且令牌已经过期时,我得到错误 Firebase ID令牌已过期。 从您的客户端应用程序获取新的令牌,然后重试。 有关如何检索ID令牌的详细信息,请参阅https://firebase.google.com/docs/auth/admin/verify-id-tokens 。 有错误代码 AUTH /参数误差 首先,错误代码是不是“auth / user-token-expired”? 其次,我收到的错误代码不在pipe理员身份validationAPI错误中 我很难妥善处理所有的firebase错误,所以我可以回复适当的错误消息给我的API的消费者。

从TypeScript Firebase Admin SDK初始化失败

我正在尝试在我的TypeScript(Nest.js)应用程序中导入Firebase Admin SDK。 let serviceAccount = require("../../creds.json"); console.log(serviceAccount); const firebase = require("firebase"); firebase.initializeApp(environment.firebase); admin.initializeApp({ credential: admin.credential.cert(serviceAccount), databaseURL: "projectid" }); 但是当我尝试构build应用程序时,出现以下错误。 ERROR in ./node_modules/@google-cloud/firestore/src/v1beta1/firestore_client.js Module not found: Error: Can't resolve './firestore_client_config' in '/home/jaybell/trellis-server/trellis/node_modules/@google-cloud/firestore/src/v1beta1' @ ./node_modules/@google-cloud/firestore/src/v1beta1/firestore_client.js 28:17-53 @ ./node_modules/@google-cloud/firestore/src/v1beta1/index.js @ ./node_modules/@google-cloud/firestore/src/index.js @ ./src/server/main.server.ts ERROR in ./node_modules/google-gax/lib/operations_client.js Module not found: Error: Can't resolve './operations_client_config' in '/home/jaybell/trellis-server/trellis/node_modules/google-gax/lib' @ ./node_modules/google-gax/lib/operations_client.js […]

如何在不知道Firebase和Firebase-admin中的密钥的情况下让孩子一触即发

我的数据库中有一个队列,如下所示: server queue -RANDOM_ID_1234 active: "true" text: "Some text" -RANDOM_ID_5678 active: "false" text: "Another text" -RANDOM_ID_91011 active: "false" text: "Text that does not matter" 我想查询并获取活动项目: queueRef.orderByChild('active').equalTo('true').once('value', function(snap) { if (snap.exists()) { console.log(snap.val()); } }); console.log将返回类似于: { -RANDOM_ID_1234: { active: "true" text: "Some text" } } 如何在不知道密钥的情况下获取文本? 我使用lodash(请参阅下面的答案),但是必须有更好的方法来做到这一点。

如何validationnodejs中的firebase-admin用户?

目前,我正在为nodejs创build一个Firebase API。 我想用nodejs上的firebase-admin处理所有Firebase的东西(如身份validation)。 但是,如果在客户端没有使用Javascript Firebase SDK的firebase-admin中通过nodejsvalidation用户身份的正确方法是什么? 在pipe理员的官方文档,我没有find一个名为signInWithEmailAndPassword (如在客户端SDK)的函数nodejs。 只有一个叫做“ getUserByEmail ”的函数,但是这个函数并不检查用户是否input了正确的密码。 这是我的forms: <form class="sign-box" action="/login" method="post"> <div class="form-group"> <input id="username" name="username" type="text" class="form-control" placeholder="E-Mail"/> </div> <div class="form-group"> <input id="password" name="password" type="password" class="form-control" placeholder="Password"/> </div> <button type="submit" class="btn btn-rounded">Sign in</button> </form> 一旦提交表单,我将这些值传递给nodejs中的API: app.post('/login', urlencodedParser, function (req, res) { // getting the values response = { username: […]

Firebase Node.JS Admin SDK发送validation邮件

我正在使用sdk为用户创build一个用户和一个数据库条目,这一切都是完美的。 创build数据库条目后,我调用sendEmailVerification()函数,但我猜这是一个客户端函数,因为它被调用时返回null。 什么是从pipe理员sdk直接发送validation电子邮件的过程(如果可能的话)。 目前我所做的是将一些JSON发送回客户端,说明validation邮件是否成功发送。 但是调用这个函数是行不通的,所以没有那么多。 这是我在节点内的function。 function verifiyEmail(email, res) { var user = admin.auth().currentUser; user.sendEmailVerification().then(function() { // Email sent. var jsonResponse = { status: 'success', alertText: '1', email: email } res.send(jsonResponse); }, function(error) { // An error happened. var jsonResponse = { status: 'success', alertText: '0', email: email } res.send(jsonResponse); }); } UPDATE 我猜这是不可能的,所以我在节点中生成一个自定义令牌,并将其发送回客户端。 然后我使用我回来的令牌尝试通过调用下面的方式来签署用户,但是signInWithCustomToken()函数不会被调用。 […]

admin.database不是一个函数

Iam使用Firebasepipe理员,但当我使用出口像 var admin = require('firebase-admin'); var serviceAccount = require('./firebaseconfig.json'); admin.initializeApp({ credential: admin.credential.cert(serviceAccount), databaseURL: "https://database.firebaseio.com" }); module.exports = { admin : admin } 并在需要使用另一个文件 var admin = require('../Firebaseconfig/firebase.js'); console.log(admin.database()) 然后在启动服务器时发生错误,但是如果在同一个文件中使用admin.database(),则Iam不会收到任何错误。 错误代码片段: 的console.log(admin.database()) TypeError:admin.database不是Object的函数。

Firebase Firebase部署错误的云端函数:错误parsing触发器:无法find模块'firebase-admin'“

当我运行firebase deploy我得到这个错误: Error parsing triggers: Cannot find module 'firebase-admin' 这是我的代码: const functions = require('firebase-functions'); const admin = require('firebase-admin'); 我的package.json是: { "name": "functions", "description": "Cloud Functions for Firebase", "dependencies": { "firebase-admin": "^5.2.1", "firebase-functions": "^0.6.2", "request": "^2.83.0" }, "private": true } 这里是我的全局节点模块: npm list -g –depth=0 /Users/TDK/.nvm/versions/node/v6.11.2/lib ├── child_process@1.0.2 ├── firebase-admin@5.3.0 ├── firebase-tools@3.12.0 ├── fs@0.0.2 ├── npm@5.4.2 […]