【发布时间】:2014-11-26 16:00:39
【问题描述】:
我想使用 REST 从服务器请求项目。
我的客户请求如下所示:
getItems(boolean after, int offset, int size)
- after:如果为 true,则客户端希望在列表的 and 中拥有项目,如果为 false,则客户端希望在第一个之前拥有项目(以防有任何更新)
- 偏移量:只有在after = true时才由服务器使用,它是客户端上的最后一项索引
- size:是客户希望接收的最大项目数
在服务器端的顺序发生任何变化之前,这非常有效。
如何更改服务器上项目的顺序,客户端才能获得正确的显示顺序?
我是否应该在每次请求时向客户端发送一个有序的 id 列表,以便客户端可以自己进行排序?这会增加传输的字节数。
编辑:来自服务器的响应是 JSON 形式的有序项目列表。客户端将按照接收到的顺序处理列表。
客户端是一个应用程序。每当用户调用 getItems() 函数:
- 滚动到列表末尾,
- 在列表顶部做出拉动刷新手势。
【问题讨论】:
-
你能告诉我们响应数据是什么样的吗?您多久在客户端调用一次 getItems 函数?
-
@phtrivier 我更新了我的答案。
-
你能告诉我们实际的 JSON 响应吗?
-
我们需要显示实际的 JSON 响应。很有可能,您没有发送 json 数组(在这种情况下,订单很容易获得。)另外,我仍然不确定我是否收到您的问题:您是否希望在服务器上的订单更改时收到通知,而不必显式调用“getItems”?
-
@phtrivier 是的,我将这些项目作为 JSON 数组发送。我的问题是在客户端处理订单更改的好方法是什么?客户应该每 x 分钟轮询一次以获取实际订单还是通过再次清除和加载来刷新列表。你会怎么做?
标签: java javascript android ios rest