首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Restful设计:返回分页数据后立即处理数据更改的最佳解决方案?

问Restful设计:返回分页数据后立即处理数据更改的最佳解决方案?
EN

Software Engineering用户
提问于 2018-05-07 14:59:33
回答 1查看 70关注 0票数 0

客户端调用api来查询按页面查看次数降序排序的产品列表。有时会出现麻烦的情况:客户机A发送请求=>服务器响应,前5篇文章的列表在第一页上有最多的页面浏览量

  1. A条
  2. B条
  3. C条
  4. D条
  5. E条

在回复第一页之后,文章G显着地增加了页面浏览量,排名第五。因此,文章E将降级并移至第二页。如果第二页仍然响应文章E,则完全是在客户端出现了两次。

在用户体验或api设计方面,什么是最好的解决方案?

EN

回答 1

Software Engineering用户

发布于 2018-05-07 15:51:59

在初始请求时,尝试获取所有返回行的快照(可能是它们的ID与请求ID一起存储在某个表中),然后在后续的页面请求中,根据这些初始行来获取信息。

这意味着您实际上有一个“请求”,其数据存储与“活动”系统分开,而请求的其他页面来自“陈旧”数据。

这是很好的,因为客户端获得良好的完整性返回,但可能不是100%的最新。这可能是一个缺点,因为它迫使您在一开始就查询整个结果集,而不管您正在进行客户端分页。

另一种方法是通知客户端数据可能在分页请求之间被更改。首选的方法将取决于情况,而这种情况在这里并不能得到真正的回答。

无论您以何种方式实现它,都要确保将其包含在API文档中,以便客户端可以计划以某种方式处理它。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/370555

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档