我正在尝试在运行Vue Webpack的服务器上设置firebase admin sdk . 这是程序 . 然后我收到了一个错误 .
-
vue init webpack vue-firebase
-
npm install firebase-admin --save
-
在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);
});
-
npm run dev
-
Safari捕获错误:database.js:63
TypeError:rtdb.initStandalone不是函数 . (在'rtdb.initStandalone(this.appInternal,dbUrl,version)'中,'rtdb.initStandalone'未定义)
有没有人有线索来解决它?
1 回答
您似乎尝试在vue.js Web应用中使用Firebase Admin SDK . vue代码在浏览器中运行,而不是在服务器中运行 .
在getting started with the Admin SDK页面中:“Admin SDK允许您从 privileged environments 与Firebase进行交互...”Web应用程序不是特权环境:如果您将服务帐户放入网页,则会向所有用户公开您的管理凭据该网络应用程序 .
您需要使用Firebase的常规Web SDK,如下所示:https://firebase.google.com/docs/web/setup