【问题标题】:Firebase admin SDK + Vue + Webpack,TypeError: rtdb.initStandalone is not a functionFirebase admin SDK + Vue + Webpack,TypeError: rtdb.initStandalone is not a function
【发布时间】:2018-12-05 19:14:38
【问题描述】:

我正在尝试在运行 Vue + Webpack 的服务器中设置 firebase admin sdk。这是程序。然后我得到了一个错误。

  1. vue init webpack vue-firebase
  2. npm install firebase-admin --save
  3. 在 main.js 中添加一些代码,例如:

    var admin = require('firebase-admin');
    var serviceAccount = require('../config/firebase.json');
    admin.initializeApp({
      credential: admin.credential.cert(serviceAccount),
      databaseURL: 'https://xxxxx.firebaseio.com'
    });
    
    var database = admin.database();
    var ref = database.ref("users");
    ref.on("value", function(snapshot) {
      console.log(snapshot.val());
    }, function (errorObject) {
      console.log("The read failed: " + errorObject.code);
    });
    
  4. npm 运行开发

  5. Safari 捕获错误:database.js:63

TypeError: rtdb.initStandalone 不是函数。 (在'rtdb.initStandalone(this.appInternal, dbUrl, version)'中,'rtdb.initStandalone'未定义)

有没有人知道解决办法?

【问题讨论】:

  • $ node -v v8.11.3 $ vue --version 2.9.6

标签: javascript firebase firebase-realtime-database webpack vue.js


【解决方案1】:

您似乎正在尝试在 vue.js 网络应用中使用 Firebase Admin SDK。 vue代码在浏览器中运行,不在服务器中。

来自getting started with the Admin SDK 页面:“Admin SDK 允许您从 特权环境 与 Firebase 交互...”网络应用程序不是特权环境:如果您将服务帐户放入网页,您将向该 Web 应用程序的所有用户公开您的管理凭据。

您将改为使用 Firebase 的常规 Web SDK,如下所示:https://firebase.google.com/docs/web/setup

【讨论】:

    【解决方案2】:

    您可以使用npm install firebase 代替npm install firebase-admin。这个包非常有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-25
      • 2023-01-05
      • 2019-10-17
      • 2020-03-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-12
      • 1970-01-01
      相关资源
      最近更新 更多