0

我正在运行一个 Web 服务,客户端移动应用程序将使用它。其中一项服务是返回一个 JSON 对象数组(超过 1000 个对象),每个对象都相当大。服务器端的整个计算需要一些时间,这不是一个好的用户体验。所以我希望以块的形式发送数据,比如每个块 10 个对象,这样这些数据就会占据屏幕,当他滚动时,或者当数据准备好时,屏幕会充满从收到的最新块中新获取的数据.

我使用 Jersey 框架并发送一个 JavaResponse对象作为返回对象。在这种情况下是否可以实现分块传输?代码是这样的。

@Path("/doSomething")
@GET
@Produces(MediaType.APPLICATION_JSON)
public Response doSomething() {

    List<Object> myObj = getMyObj();
    /* getMyObj returns a list of Objects, each object of considerable size
    * the whole computation of getMyObj takes some time
    */
    return Response.ok(myObj).build();
}
4

1 回答 1

1

你的场景听起来像server push

您可以尝试将Atmosphere框架与您的 Jersey 服务一起使用来实现您的目标。

于 2013-08-29T10:46:21.547 回答