我有一个用Flutter编写的社交媒体应用程序。用户可以看到彼此的个人资料,并阻止/取消阻止他们。我使用MySQL来保存这些数据。现在我想使用Firebase Firestore实现聊天功能当一个用户向另一个用户发送消息时,我是否应该检查用户是否每次都阻止另一个用户访问MySQL,所以用户不能发送新消息。这是聊天应用程序中的一个好做法吗?或者我也应该在Firebase中存储“被阻止”的数据。我深入研究了这个问题,但没有找到任何解决办法。
yqkkidmi1#
因此,您可以像当前大多数社交媒体一样编写代码。
简单地让用户发送消息,但是在接收方用户侧设置条件,使得如果用户被接收方阻止,则不应该在用户聊天列表中显示聊天,并且如果用户被接收方阻止,则不应该发送通知。
rsl1atfo2#
就像当用户试图发送消息给另一个用户,所以在收件人列表中,你也检索的值(是特定的用户被阻止的当前用户),如果它是这样,你是在那个时候检查这一点。第二,如果你想在发送到服务器时检查这个。所以,你可以使用firestore事务来管理这个,在这个事务中你可以得到发送者的对象,检查发送者阻止了谁,你可以抛出一个异常。另一件事你也可以使用Firestore安全规则来管理它。
2条答案
按热度按时间yqkkidmi1#
因此,您可以像当前大多数社交媒体一样编写代码。
简单地让用户发送消息,但是在接收方用户侧设置条件,使得如果用户被接收方阻止,则不应该在用户聊天列表中显示聊天,并且如果用户被接收方阻止,则不应该发送通知。
rsl1atfo2#
就像当用户试图发送消息给另一个用户,所以在收件人列表中,你也检索的值(是特定的用户被阻止的当前用户),如果它是这样,你是在那个时候检查这一点。
第二,如果你想在发送到服务器时检查这个。所以,你可以使用firestore事务来管理这个,在这个事务中你可以得到发送者的对象,检查发送者阻止了谁,你可以抛出一个异常。另一件事你也可以使用Firestore安全规则来管理它。