Firebase 支持所有主要的移动网络浏览器,甚至可以在离线模式下工作。甚至还有一个node.js 客户端和REST API。
当 WebSockets 不可用时,它使用标准的后备选项。从常见问题解答中查看这些问题:
Firebase 支持哪些浏览器和网络连接?
Firebase JavaScript 客户端支持所有主流浏览器(IE 7+、Firefox、Chrome、Safari、Opera 和主要的移动网络浏览器),它适用于任何网络连接。我们的团队花费了数年时间来构建这种类型的软件,并且我们投入了大量的研究和努力来确保我们可以在各种环境中进行通信。我们甚至通过代理和与其他实时技术可能失败的各种移动提供商合作。
如果我失去网络连接,我的应用会怎样?
一旦您重新连接,Firebase 就会透明地重新连接到 Firebase 服务器。同时,无论网络状态如何,您的应用在本地完成的所有 Firebase 操作都将立即触发事件,因此您的应用将继续正常运行。重新建立连接后,您将收到一组适当的事件,以便您的客户端“赶上”当前服务器状态,而无需编写任何自定义代码。
等等,这是否意味着我的应用程序将自动在“离线模式”下运行并在它重新上线时恢复?
是的,是的,确实如此。:-)
更新
啊,我们开始吧。我四处寻找FB团队直接回答的SO问题,我的搜索并没有白费:
Firebase Javascript 客户端维护与服务器的实时双向连接。在幕后,这将尽可能使用 WebSockets(它对跨域连接没有限制)并回退到旧浏览器上基于隐藏 iframe 的 jsonp 长轮询(通过仅执行请求来回避跨域问题) .