เป็นไปได้ไหมที่จะมี ตัวแปรทั่วโลก บนฟังก์ชันคลาวด์ของ firebase
ฉันหมายความว่าฉันอาจมี index.js เช่นนั้นในการตั้งค่าตัวแปรร่วม สมมติว่า panicModeVariable
และฉันต้องการตรวจสอบฟังก์ชันคลาวด์ของฉันในตัวแปรนี้ก่อนดำเนินการใดๆ อย่างเช่นที่นี่ในการตรวจสอบสิทธิ์สร้างทริกเกอร์ผู้ใช้
const functions = require('firebase-functions');
const admin = require("firebase-admin");
admin.initializeApp(functions.config().firebase);
var globalVariable = false;
// Create Account User
exports.createUserAccount = functions.auth.user().onCreate(event => {
if (!globalVariable) {
const uid = event.data.uid
const email = event.data.email
const photoUrl = event.data.photoURL
}
[...]
ฉันลองใช้ฟังก์ชันจำลองสองฟังก์ชัน
exports.setGlobal = functions.https.onRequest((request, response) => {
globalVariable = true;
response.send("Set " + globalVariable);
});
exports.getGlobal = functions.https.onRequest((request, response) => {
response.send("Read " + globalVariable);
});
แต่ดูเหมือนว่าฉันไม่สามารถเข้าถึงตัวแปรนี้ได้ในแบบที่ฉันตั้งใจไว้
ฟังก์ชั่นการเขียนจะใช้ตัวแปร 'ท้องถิ่น' ในขณะที่การอ่านจะใช้ค่าเริ่มต้นเสมอ
ฉันต้องการทำเช่นนั้น หากเป็นไปได้ เพื่อให้มีตัวแปรฝั่งเซิร์ฟเวอร์ ให้อ่านได้โดยตรงโดยไม่จำเป็นต้องเรียก SDK เพื่ออ่าน สมมติว่าเป็นค่าที่จัดเก็บฐานข้อมูล (เพื่อไม่ให้มีการนับการเรียกใช้ฟังก์ชัน)