我可以在客户端和Firebase之间使用自己的NodeJS服务器,并仍然使用“on()”方法吗?
我正在使用Firebase创build一个Web应用程序。 如果有必要,应用程序的客户端会与我自己的NodeJS服务器通信,而后者又会与Firebase应用程序进行通信。
Firebase提供了一些很酷的function,例如on()
函数,只要修改了Firebase中的数据,它就会自动更新。
有什么办法让我在我的NodeJS应用程序中使用它,以便我的服务器将更新传递给客户端,而客户端不必直接连接到Firebase?
我已经试过包括这样的函数,但是当数据更新和服务器崩溃时,我得到一个错误。 显然,如果没有明确的请求,Node不能发送另一个响应。 有小费吗?
app.get('/project/save', function(req, res) { var result = firebase_admin.database().ref().on('value', function(d){ console.log(d.val()); return res.status(200).json(d.val()); }); });
您绝对可以在自己的用户和Firebase数据库之间放置自己的node.js服务器。 但是通过这样做,你将扮演应用程序服务器的angular色。 这意味着您还必须为Firebasefunction提供自己的实现/代理,例如on()
方法。
链接答案的方法是更容易,并获得大部分相同的好处。 本文档中也有logging :
因此,您的用户和后端代码(在此情况下运行在App Engine Flexible Environment上,但可以在任何可信任的环境中运行)都是Firebase数据库的客户端。
我们最近在Firebase开发峰会上发表了一个演讲,我们也介绍了这个方法: 开发没有基础设施的移动应用程序 。
- 尝试连接到本地主机:5000 Firebase时获取“无法获取/”
- 如何在Firebase的Cloud Functions中创buildHTTP请求?
- Firebase错误消息/身份validation错误
- 迁移到新控制台后,Firebase部署被破坏 – “错误:需要身份validation”。
- “使用Node.JS的Firebase云function”中的“functions.config()不可用”
- Google云端存储的Firebase云端functionAPI错误
- Nodejs,Cloud Firestore上传任务 – 身份validation错误:错误:套接字挂断
- 用于Firebase Admin SDK的Node.js身份validation服务器 – JWTvalidation问题
- 是否可以在本地testingFirebase触发器?