【问题标题】:How can I change data on Firebase without any of my clients running?如何在没有任何客户端运行的情况下更改 Firebase 上的数据?
【发布时间】:2017-08-15 15:43:02
【问题描述】:

我正在开发一个使用 Firebase 和 React 的网络应用。我想在应用程序中有一个计时器,一旦完成就会重置 - 我的想法是将计时器结束的日期存储在 Firebase 中,然后让客户端每次将当前日期与计时器的结束时间进行比较发射。我唯一的问题是,一旦当前计时器完成,我不确定如何将新的计时器结束日期推送到 Firebase。即使没有客户端在运行,这也是需要发生的事情。如果答案只是我需要至少有一个客户端始终运行,那么我将不胜感激任何有关实用方法的建议。

【问题讨论】:

    标签: javascript reactjs firebase timer firebase-realtime-database


    【解决方案1】:

    您应该运行自己的“客户端”,它会定期获取数据库(由您决定时间间隔)并将每个客户端的日期与当前日期进行比较。这基本上就是你所说的后端。

    由您决定使用哪种语言。有firebase库for some languages,否则可以使用REST API。由于您似乎已经有使用 Javascript 的经验,我建议您使用它(也许与 Node.js 结合使用,我对此没有具体经验)。

    【讨论】:

    • 感谢您的帮助。我最终使用了 Node.js,Firebase 有关于 on their website 的说明
    【解决方案2】:

    拥有后端服务的第一种方法是一种选择,但我认为您也可以使用 Firebase Cloud Functions。

    https://firebase.google.com/docs/functions/use-cases#perform_database_sanitization_and_maintenance

    借助 Cloud Functions,您可以使用触发器完成大量工作。触发器可以是数据库的更新、发送到存储的文件甚至是 HTTP 请求。在下面的链接中,您可以看到可用于实时数据库的触发器

    https://firebase.google.com/docs/functions/database-events

    希望对你有帮助。

    【讨论】:

    • 这次我选择了后端解决方案,但我必须研究一下。感谢您的建议
    猜你喜欢
    • 1970-01-01
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    • 2018-02-01
    • 1970-01-01
    • 2015-03-08
    • 1970-01-01
    • 2019-12-17
    相关资源
    最近更新 更多