我有一个关于从 RESTful 服务获取“随机”可用内容块的问题,而不复制客户端已经缓存的内容。如何以 RESTful 方式执行此操作?
我提供了大量的项目(带有文本和网址的小文章)。让我们假设它是:/api/article/
我的(软件)客户希望获得可用的随机块。太多了,无法将它们全部加载到客户端上。他们没有自然的顺序,所以这不是他们可以要求最新的情况。相反,客户可能会给出大约 6-10 个属性来“提示”他们希望看到的文章类型(例如,流行的、最近的、流行的……)。
随着时间的推移,客户获得的内容越来越多,但在服务器上我不知道他们已经拥有什么,而且因为它们是随机发送的,所以我不能只传递他们拥有的“最新”内容。
可以想象,我可以发送本地存储的 GUIDS。客户端仅在本地存储 50-100 个。这足够小,可以填充到 POST 变量中,但不能填充到 GET 查询字符串中。
设计这个的干净方法是什么?
关键点:
- 数据没有逻辑顺序
- 客户端必须在本地缓存内容
- 每个项目都有一个 GUID
- 想要避免下拉重复