Я пытаюсь создать свое присутствие в Cloud Firestore в React + Firebase. Я следую этому официальному документу . До этого приложение работало на Firestore, и оно работает хорошо. Но на этот раз для его создания требуется и Firestore, и RDB.
Я попытался получить firebase
как обычно, но возникает ошибка ниже:
@firebase/database: FIREBASE FATAL ERROR: Can't determine Firebase Database URL.
Be sure to include databaseURL option when calling firebase.initializeApp().
Firestore работает, но RDB не не работает.
config / firebase. js
import * as firebase from "firebase";
import "firebase/auth";
var firebaseConfig = {
apiKey: process.env.REACT_APP_FIREBASE_API_KEY,
authDomain: process.env.REACT_APP_FIREBASE_AUTH_DOMAIN,
databaseURL: process.env.REACT_APP_FIREBASE_DATABASE_URL,
projectId: process.env.REACT_APP_FIREBASE_PROJECT_ID,
storageBucket: process.env.REACT_APP_FIREBASE_STORAGE_BUCKET,
messagingSenderId: process.env.REACT_APP_FIREBASE_MESSAGING_SENDER_ID,
appId: process.env.REACT_APP_FIREBASE_APP_ID,
measurementId: process.env.REACT_APP_FIREBASE_MEASUREMENT_ID
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
firebase.analytics();
export default firebase;
app. js
firebase.auth().onAuthStateChanged(user => {
const uid = user.uid;
const userStatusDatabaseRef = firebase.database().ref("/status/" + uid);
const isOfflineForDatabase = {
state: "offline",
last_changed: firebase.database.ServerValue.TIMESTAMP
};
const isOnlineForDatabase = {
state: "online",
last_changed: firebase.database.ServerValue.TIMESTAMP
};
firebase
.database()
.ref(".info/connected")
.on("value", function(snapshot) {
if (snapshot.val() == false) {
return;
}
userStatusDatabaseRef
.onDisconnect()
.set(isOfflineForDatabase)
.then(function() {
userStatusDatabaseRef.set(isOnlineForDatabase);
});
});
});
URL базы данных похож на https://xxxx.forebaseio.com
.