[英]Node.js request aborted
我正在使用 express 和 body-parser 将大量数据从一台服务器发送到另一台服务器,但一段时间后我收到了这个异常:
{
"message": "request aborted",
"code": "ECONNABORTED",
"expected": 99010,
"length": 99010,
"received": 96872,
"type": "request.aborted"
}
什么可能导致这种情况? 如果您需要更多信息,请告诉我。
更新这是我配置的限制:
application.use(bodyParser.json({ limit: '50mb' }));
application.use(bodyParser.urlencoded({ extended: true, limit: '50mb' }));
这是由 body-parser 使用的 raw body 抛出的异常
来自快递文档:
请求中止当请求在读取正文完成之前被客户端中止时,将发生此错误。 接收的属性将设置为请求中止之前接收的字节数,而预期的属性将设置为预期的字节数。 status 属性设置为 400,type 属性设置为“request.aborted”。
例如,如果您想处理从正文解析器抛出的所有请求
'encoding.unsupported',
'entity.parse.failed',
'entity.verify.failed',
'request.aborted',
'request.size.invalid',
'stream.encoding.set',
'parameters.too.many',
'charset.unsupported',
'encoding.unsupported',
'entity.too.large'
使用这个中间件
$ npm i express-body-parser-error-handler
并在您的 body-parser 初始化之后简单地将其放置
const bodyParserErrorHandler = require('express-body-parser-error-handler')
...
...
application.use(bodyParser.json({ limit: '50mb' }));
application.use(bodyParser.urlencoded({ extended: true, limit: '50mb' }));
application.use(bodyParserErrorHandler());
...
默认情况下,表示为2分钟超时。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.