[英]Can't connect to Firebase Realtime Database NodeJS Server
當我嘗試運行以下代碼時,控制台中顯示以下錯誤:
節點mcve.js防火牆警告:設置為/ sitesToVisit / -Kr6oOddLtLUcpUpha7m失敗:Permission_denied(node:12540)UnhandledPromiseRejectionWarning:未處理的承諾拒絕(拒絕ID:1):錯誤:PERMISSION_DENIED:權限被拒絕
var firebase = require("firebase");
var config = {
apiKey: "AIzaSyCJyakN_kwOnZ2f4-P0tzGdODEJeDsXt3w",
authDomain: "seo-hero-fe0e8.firebaseapp.com",
databaseURL: "https://seo-hero-fe0e8.firebaseio.com",
projectId: "seo-hero-fe0e8",
storageBucket: "seo-hero-fe0e8.appspot.com",
messagingSenderId: "333356421370"
};
firebase.initializeApp(config);
var database = firebase.database();
var sitesToVisitRef = firebase.database().ref("sitesToVisit");
var newSiteToVisitRef = sitesToVisitRef.push();
newSiteToVisitRef.set({
url: 'url',
baseUrl: 'urlBase'
});
var firebase = require("firebase");
var config = {
apiKey: "apiKey",
authDomain: "authDomain",
databaseURL: "databaseURL",
projectId: "projectId",
storageBucket: "storageBucket",
messagingSenderId: "messagingSenderId"
};
firebase.initializeApp(config);
var database = firebase.database();
var sitesToVisitRef = firebase.database().ref("sitesToVisit");
var newSiteToVisitRef = sitesToVisitRef.push();
newSiteToVisitRef.set({
url: 'url',
baseUrl: 'urlBase'
});
更新:我嘗試在新文件夾中創建一個新文件,該文件不在公共NPM軟件包中。 這在我做一個簡單的工作時起作用:
firebase.database().ref('usersecond').set({
username: "ben",
email: "hi",
profile_picture : "imageUrl"
});
初始化數據庫后。 但是,當我添加其余代碼時,該設置不會影響數據庫。 它沒有引發錯誤,但是數據沒有顯示在數據庫中。 可能是因為我正在使用NPM請求模塊嗎?
看來您無權編寫/sitesToVisit/-Kr6oOddLtLUcpUpha7m
。
如果此代碼在受信任的環境 (例如您控制的設備/服務器或Cloud Functions)上運行,則考慮使用Firebase Admin SDK: https ://firebase.google.com/docs/admin/setup。 這將使代碼以管理特權運行,而繞過安全規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.