从节点Express API返回大型JSON响应

时间:2019-05-01 10:45:53

标签: javascript node.js api express

我在node / express api中有一个控制器,该控制器返回数据以构建报告。根据报告的不同,请求的数据可能非常大(20Mb)。

获取此类数据并保持良好的用户体验的最佳方法是什么?

不想使用分页,在获得所有数据之前,我将不得不执行N个请求。我想到了分块传输编码网络套接字,但是我不确定这是最好的方法。

谢谢。

2 个答案:

答案 0 :(得分:1)

  

在这种情况下,用户需要所有这些数据来构建报告。

否,用户需要报告。如果将该报告的创建移至后端,则只需将最终报告发送给客户端,该报告可能更轻巧。它还可能允许服务器端缓存。

答案 1 :(得分:0)

我想说的是,分页没有真正的替代方法,尽管您可以在客户端设置一个简单的脚本,当滚动到页面底部时,该脚本将加载更多的数据/页面。

window.onscroll = function() {
    if ((window.innerHeight + window.pageYOffset) >= document.body.offsetHeight) {
        // your api ajax calls 
    }
};