首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候为Firebase实时数据库使用云函数?

什么时候为Firebase实时数据库使用云函数?
EN

Stack Overflow用户
提问于 2018-05-21 01:23:31
回答 1查看 84关注 0票数 0

我不清楚为Android应用程序使用Firebase的架构。你可以在不使用云函数的情况下从客户端做任何事情吗,因为在java中可以用函数访问数据库。它是否仅用于安全目的,以限制客户端制造问题?

EN

回答 1

Stack Overflow用户

发布于 2018-05-21 05:06:48

大多数功能确实可以直接从客户端应用程序执行,使用适用于您的应用程序平台的Firebase SDK。只要有可能,我强烈建议用这种方式实现它。

但是某些类型的功能不适合直接从客户端执行。它们通常分为以下几个主要类别:

  • 该操作需要特权信息。例如,如果要向应用程序用户发送推送通知,则需要指定FCM服务器密钥。顾名思义,该密钥只能在您控制的服务器上使用,或者在其他受信任的环境中使用,例如Cloud Functions。同样的原因也适用于与支付网关交互,以及谷歌云平台中许多需要服务器端API密钥的API。
  • 操作本身的代码is a特权操作。例如,你经常会在游戏中发现这一点,在游戏中,你想要验证用户没有作弊。如果您将此代码放入您的应用程序本身,恶意用户可以看到它,并利用它来绕过您的检测。通过将代码移动到云函数中,应用程序的用户将无法再看到代码。
  • 代码需要更多的“电力”(中央处理器、网络、内存、磁盘空间、电池),而不是依赖于在用户设备上可用。由于云功能在谷歌数据中心运行,它们总是与电源相连,它们拥有可靠的中央处理器、强大的网络和可配置的内存/内存磁盘空间。

另一个优势是,云函数对于目标平台上的任何用户都是相同的。假设您有一个复杂的算法,您希望Android、iOS和Web上的用户使用该算法。如果您在Cloud Functions中实现算法,则只需实现一次,然后从每个平台调用它,而不必为每个平台实现算法。

我还建议您查看list of use-cases in the Cloud Functions for Firebase documentation

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50437542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档