我必须使用服务器端代码来使我的应用程序与Firebase / firestore交互吗?

时间:2019-02-13 04:01:17

标签: firebase web-applications google-cloud-firestore

我有点迷茫,我正在阅读firebase上的文档,并且它们具有auth和客户端和服务器的其他功能,有什么区别?我想构建一个无服务器的Web应用程序。我可以从客户端完成所有操作(身份验证,粗略)吗?

2 个答案:

答案 0 :(得分:0)

Firebase提供了SDK,使您可以直接从客户端与其后端服务进行交互。这意味着您的(网络)应用程序可以使用Firebase的JavaScript SDK直接从Cloud Firestore读取和写入。

然后,您将使用Firebase的服务器端安全规则来控制每个用户可以读取和修改数据库中的数据。通常,这意味着您会要求用户登录,尽管从技术上来讲这不是必需的。

这是否足以在不编写任何服务器端代码的情况下构建整个应用程序,取决于应用程序涵盖的用例。通常,我使用Cloud Functions来运行服务器端代码而不必担心服务器管理,因此我将其用于:

  1. 需要敏感数据(例如支付网关的API密钥)或代码本身敏感(例如游戏的作弊检测)的操作。
  2. 需要可靠计算能力的操作,例如RAM,CPU,带宽或电池(例如缩放图像)。
  3. 我只想实现一次的操作,这些操作可以等到用户连接到网络后(Firestore在脱机时继续在其本地设备上工作)。

答案 1 :(得分:0)

是的,您只能使用客户端代码(例如:swift + firebase Auth,Firestore,Storage等)来构建无服务器应用程序。

但是,出于某些功能或出于安全目的,您可能需要编写一些云功能代码。云功能代码是服务器端代码,永远不会在客户端公开