为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决按登录时间分页加载数据会有重复的问题?

如何解决按登录时间分页加载数据会有重复的问题?

慕勒3428872 2019-04-16 17:05:52
场景是这样的:安卓客户端要按登录时间在首页显示用户列表,服务端提供数据,每次下拉请求,相当于是从服务端请求加载下一页的的数据,但是这样会有一个问题,假如第一页服务端给了客户端最新的数据,但是在加载第二页之前,又有几个新的用户登录了进来,这样这些新用户就是最新登录的,所以在第二页的时候就会有一些第一页的用户,请教给位大神怎么解决这个问题?
查看完整描述

2 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

几个方案:
客户端去重,优点:实现简单。缺点:数据不准确。
(推荐)根据时间排序,客户端获取下一页数据时传回上一次最后一条数据的登录时间,数据库查询的时候select*fromtablewhere登录时间<上一次最后一条数据的登录时间orderby登录时间。
给每个客户端记录一个时间戳,获取第一页的时候更新这个时间戳,查询下一页的时候select*fromtablewhere登录时间<时间戳orderby登录时间limit当前页
                            
查看完整回答
反对 回复 2019-04-16
?
守着星空守着你

TA贡献1799条经验 获得超8个赞

如果用户顺序是不变的,可以每次记录显示的最后一个用户,从服务端获取到下一页后,先搜下如果有之前的最后一个用户,就跳过他以及之前的用户,为了避免用户不够了可能要根据实际情况每次多加载几个。如果本来应该在第二页的用户因为重新登陆跑到最前边去了,应该也没问题吧,一般也不会有人能注意到。
                            
查看完整回答
反对 回复 2019-04-16
  • 2 回答
  • 0 关注
  • 266 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信