在http中发送和接收一个大的json对象

时间:2018-06-28 07:08:20

标签: node.js nodejs-stream jsonstream

我的配置就是这样。

在带有Expressjs的Node.js上运行的客户端应用程序服务器。 API服务器正在带有expressJs的Node.js上运行,并且我正在使用postgresql数据库。

当我的客户端向api服务器请求数据时,api服务器抛出错误

"*Error is  RangeError: Invalid string length*". 

我猜想原因是,api试图通过从数据库中获取的大量Json对象来响应客户端。

现在我的问题是,如何在http响应中发送这么大的Json对象?如果发送成功,该如何在客户端进行处理?

我遇到了JSONStream模块。但是,我找不到一个可以在我的场景中选择工具的好例子。

2 个答案:

答案 0 :(得分:0)

我认为BodyParser会有所帮助。

pip install -U opencv-python

与http请求和响应相比,这会增加json的大小

您还可以检查:-

var bodyParser = require('body-parser');

 app.use(bodyParser.urlencoded({
    parameterLimit: 100000,
    limit: '50mb',
    extended: true
  }));

Ref- Freecodecamp link

答案 1 :(得分:-1)

每当我们不得不处理更大的数据时,由于它而面临的问题,在这种情况下,应始终以块的形式获取数据,而不是一次加载所有数据。 因此,在您的情况下,建议您分批加载数据。