【发布时间】:2019-05-01 10:45:52
【问题描述】:
我在 node/express api 中有一个控制器,它返回数据以构建报告。根据报告,请求的数据可能非常大 (20Mb)。
获取此类数据并保持良好用户体验的最佳方式是什么?
不想使用分页,我必须做 N 个请求,直到我得到所有数据。想到块传输编码,我想到了web sockets,但我不确定这是不是最好的方法。
谢谢。
【问题讨论】:
-
除了思考之外,您还尝试过什么?
-
Don't want to use paging,但这将是最好的用户体验.. -
目前,它是一次获取所有数据,这需要一些时间。到目前为止,我有分页,但我将分页视为用户交互,用户会在需要时获得新的数据块。在这种情况下,用户需要所有这些数据来构建报告。
-
也许你应该在另一个进程中使用 AJAX 来获取块中的数据。这样用户就可以继续与浏览器交互,直到所有数据都下载完毕,然后就可以显示报表了?还要确保压缩数据,因为 JSON 是简单的文本格式。
-
分页不一定需要用户交互。但当然,您的客户端逻辑必须实现获取剩余结果。
标签: javascript node.js api express