我想我很困惑firebase-admin,Web SDK我只是想連接一個預定的作業,它將資料推送到我的Real-time database
專案結構

包.json
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"scripts": {
"serve": "firebase emulators:start --only functions",
"shell": "firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "14"
},
"main": "index.js",
"dependencies": {
"firebase-admin": "^9.8.0",
"firebase-functions": "^3.14.1"
},
"devDependencies": {
"firebase-functions-test": "^0.2.0"
},
"private": true
}
如何正確地將我的預定云功能連接到 Firebase 資料庫?
這是我的 index.js,大多數預定功能都將在其中運行
const functions = require("firebase-functions");
const admin = require("firebase-admin");
const serviceAccount = require("./serviceAccountKey.json");
//const { push } = require("firebase/database")
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "myurl"
});
const database = admin.database();
exports.scheduledFunction = functions.pubsub
.schedule("every 1 minutes")
.onRun((context) => {
push(database, "/hello", {
message: "world"
})
return console.log("This will be run every 1 minutes!");
});
uj5u.com熱心網友回復:
Admin SDK 不像客戶端 SDK 那樣完全模塊化,因此如果使用 Admin SDK,您必須使用命名空間語法:
const db = admin.database();
exports.scheduledFunction = functions.pubsub
.schedule("every 1 minutes")
.onRun((context) => {
console.log("This will be run every 1 minutes!");
return db.ref('hello').push({ name: "Hellow" });
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/458860.html
