我的Messenger应用程序向服务器发送请求以创建组,服务器处理请求(创建组的数据库条目)并发回响应,但有时它会因连接弱而发生,不会收到响应特别是时间瞬间,因此客户端再次为同一组发送请求。
在这种情况下发生的故障服务器处理这两个请求,并在数据库中为同一组创建两个不同group_id的条目(如果有更多请求,则更多)。
如何避免数据库中的多个条目并使其保持一致? 由于多个条目,当客户端重新安装应用程序时,如果数据库中有一个组的三个条目,则所有三个条目都将加载到应用程序中。
我想到的一个解决方案是检查具有给定名称的组是否已经存在,但这不是可接受的解决方案,因为客户端可以创建更多具有相同名称的组。
注意:
答案 0 :(得分:0)
数据包ID对于发送到服务器的此类重复JSON请求是唯一的。将其用作过滤器并丢弃重复的数据包ID。与消息包和其他请求相同。