这种情况是,我有一个网站,最终用户可以在其中填写表格进行订购,但是更具体地说,不需要注册或登录。无法注册或登录。表单已填写,带有“提交”按钮,我想使用功能来验证输入,如果有效,请将其发送到Firebase。有几个问题:
我想到这确实是按顺序读取用户输入的最佳解决方案,当时我想到js可以以某种方式将数据发送给我的电子邮件地址,但是经过仔细研究,我可以t发现了这种可能性。无论如何,可以肯定有解决Firebase问题的方法。我要设置的唯一可能性是通过网站写入数据库,然后仅通过Firebase控制台读取数据。
答案 0 :(得分:1)
如果不对用户进行身份验证,您将无能为力,我猜最好的选择是设置写规则以保护所保存数据的完整性(因此,即使具有访问权限的人向其写了密码,必须遵循一种结构):https://firebase.google.com/docs/database/security/securing-data并将读取规则设置为无人。
另一种方法可能是在后端服务器上具有API,以确保仅在将所有请求保存到Firebase之前才来自您的网站。这样,您就不必公开Firebase配置。
答案 1 :(得分:1)
除了@AlchemistShahed的答案外,我建议您检出Firebase's anonymous authentication。这为每个用户提供了一个ID,而无需他们指定任何信息。它几乎是一个持久的会话ID,其代码如下:
firebase.auth().signInAnonymously()
通过将此(匿名)用户的UID嵌入他们写入数据库的数据中,您可以轻松地检测到何时有单个用户向队列中填充数据。
答案 2 :(得分:0)
您可以编写一个将在表单发布中调用的云函数,该函数将在将数据插入Firebase之前检查和清理数据。由于数据插入将从服务器端完成,因此客户端不存在任何配置。然后在Firebase上设置安全性,以便只有您可以阅读。
您还可以检查那些链接,您可能还会在其中找到其他内容。
以下是Firebase规则的一些常见用例的链接: https://gist.github.com/codediodeio/6dbce1305b9556c2136492522e2100f6
以下是Firebase安全文档的链接:https://firebase.google.com/docs/database/security/