Hi I am trying to implement firebase realtime database API in my website, I am following this documentation: https://firebase.google.com/docs/database/admin/save-data#node.js but I get this error:
this is my code:
<script type="module"> // Import the functions you need from the SDKs you need import { initializeApp } from "https://www.gstatic.com/firebasejs/9.8.3/firebase-app.js"; import { getAnalytics } from "https://www.gstatic.com/firebasejs/9.8.3/firebase-analytics.js"; import { getDatabase } from "https://www.gstatic.com/firebasejs/9.8.3/firebase-database.js";; // TODO: Add SDKs for Firebase products that you want to use // https://firebase.google.com/docs/web/setup#available-libraries // Your web app's Firebase configuration // For Firebase JS SDK v7.20.0 and later, measurementId is optional const firebaseConfig = { apiKey: "xxxxxxxxxxxxxxxxxxxxx", authDomain: "xx.x.xxx", databaseURL: "xxxxxxxxxxxxxxxx", projectId: "xxxxx", storageBucket: "xxxxxxxxx", messagingSenderId: "xxxx", appId: "xxxxx", measurementId: "xxxxxxx" }; const fireapp = initializeApp(firebaseConfig); const db = getDatabase(fireapp); const ref = db.ref('server/saving-data/fireblog'); </script>
What am I doing wrong? Could the version I am using be incorrect?
Advertisement
Answer
You’re mixing the new modular/v9 syntax of the API with the older namespaced syntax, and that won’t work.
In v9 the equivalent of that last line is:
const dbref = ref(db, 'server/saving-data/fireblog');
Since you seem to be taking outdated code, I recommend keeping the documentation handy (for example, this section on getting a reference) to compare the v8 and v9 code samples, as well as reading the upgrade guide.