我想在我的网络应用程序中处理在线和离线状态。 这样用户就可以看到谁在线谁不在线。
我发现这个很棒的教程解释得很好,但我被卡住了。
我觉得 cloud-functions
有问题,因为我在那里遇到了错误。
此外,该教程是从 2017 年 12 月 15 日开始的,我知道 cloud-functions
已更新,但我不知道如何更新代码。
文档链接:https://firebase.google.com/docs/functions/beta-v1-diff
有人可以看一下教程,也许可以帮助我吗?
云功能:
const functions = require('firebase-functions');
const Firestore = require('@google-cloud/firestore');
const firestore = new Firestore();
exports.onUserStatusChanged = functions.database
.ref('/status/{userId}') // Reference to the Firebase RealTime database key
.onUpdate((event, context) => {
const usersRef = firestore.collection('/users'); // Create a reference to
the Firestore Collection
return event.before.ref.once('value')
.then(statusSnapshot => snapShot.val()) // Get latest value from the Firebase Realtime database
.then(status => {
// check if the value is 'offline'
if (status === 'offline') {
// Set the Firestore's document's online value to false
usersRef
.doc(event.params.userId)
.set({
online: false
}, {
merge: true
});
}
return
})
});
最佳答案
官方 Firestore 文档 (Build presence in Cloud Firestore) 中有更新的教程,解释了如何设置 Firestore、实时数据库和 Cloud Functions。
关于javascript - 在 Firebase 中处理用户的在线和离线状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51768240/