http错误内容长度不匹配节点js

时间:2018-02-05 09:26:36

标签: node.js http

我使用nodejs设置了RestFul服务器。这个获取api发送一个包含对象数组的json对象。阵列的大小可以非常大(> 50,000)。我正在使用猫鼬。这是服务器端代码

var mq = DeviceData.find().lean();
mq.then(function(data) {
    res.json({
        error: data && data.length > 0 ? false : true,
        carry: req.query.carry,
        data: data
    });
}, function(err) {
    next(err);
})

当数据集很大时,我的Chrome浏览器会出现 http内容不匹配。我的节点版本是v8.4.0。 DeviceData是mongoose架构对象。对于前端,我使用 AngularJS

1 个答案:

答案 0 :(得分:0)

好像你的前端lib发送了错误的标题Content-Length,它与你的实际数据不匹配。

此处来自规范的信息:

  

在消息正文的消息中给出Content-Length时   允许,其字段值必须与OCTET的数量完全匹配   消息体。 HTTP / 1.1用户代理必须在何时通知用户   收到并检测到无效长度。

https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html