上载大文件Node.js multer时出现ERR_CONNECTION_RESET

问题描述

我正在编写一个Web应用程序,允许用户上传非常大的文件(最大为GB)。我的技术栈包括:nodejs,express,multer和纯html。小文件工作正常。但是,当我上传文件(127 MB)时,等待了一段时间(大约 2分钟)后出现了错误 ERR_CONNECTION_RESET

我尝试同时使用req.setTimeout和res.setTimeout在服务器上延长响应时间,但没有帮助。可能是因为前端等待很长时间才能获得响应。

以下是我得到的错误

enter image description here

谢谢大家。

解决方法

为相应的上传路由增加res超时肯定可以解决。尝试这样做:

function extendTimeout (req,res,next) {
  // adjust the value for the timeout,here it's set to 3 minutes
  res.setTimeout(180000,() => { // you can handle the timeout error here })
  next();
})

app.post('/your-upload-route',extendTimeout,upload.single('your-file'),(req,next) => {
  // handle file upload
})

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...