【发布时间】:2021-05-12 08:59:15
【问题描述】:
这种情况可能不会发生太多,但我宁愿安全也不愿后悔。我目前正在尝试使用对我的数据库的 API 调用来使用 Flutter MongoDB 创建一个登录/注册系统。在注册屏幕上,我正在检查放入密码和用户名文本字段的数据是否已经存在于数据库中。换句话说,如果具有这些凭据的帐户已经存在,那么我会要求用户再试一次,但如果没有,那么我允许用户转到 EULA 并提交页面。
这里的问题是,我觉得两个或多个用户可以同时进行相同的检查,并且会得到相同的结果,因为虽然他们的信息可能匹配,但没有一个帐户实例这些凭据上传到数据库,以便系统告诉他们在进入提交页面之前停止。如果他们同时将他们在手机上写入的数据提交到数据库,就会出现这样一种情况,即我们在数据库中存在同种帐户的多个实例。
我知道密钥存在并且可以帮助使每个帐户彼此唯一,但是在这种情况下,我不确定如何处理或防止将相似或相同数据从本地设备同时上传到同一设备服务器。对我的服务器和 MongoDB 的调用是异步的吗?这是我需要担心的事情吗?
【问题讨论】:
标签: database mongodb passwords