首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用adminjs仪表板将大型文件上传到s3而没有任何问题?

如何使用adminjs仪表板将大型文件上传到s3而没有任何问题?
EN

Stack Overflow用户
提问于 2022-08-08 13:33:03
回答 1查看 78关注 0票数 0

我试图使用adminjs仪表板中的40mbs+特性将文件( s3 )上传到s3。

当我在localhost上测试时,它会上传大部分这些文件,没有任何问题,但是上传需要很长的时间。但是,当我在AWS EC2上尝试部署的版本时,我会得到以下错误。

代码语言:javascript
复制
Error: Request aborted
    at IncomingMessage.<anonymous> (/home/ubuntu/elearning-system-backend/node_modules/formidable/lib/incoming_form.js:122:19)
    at IncomingMessage.emit (node:events:513:28)
    at IncomingMessage.emit (node:domain:489:12)
    at IncomingMessage._destroy (node:_http_incoming:224:10)
    at _destroy (node:internal/streams/destroy:109:10)
    at IncomingMessage.destroy (node:internal/streams/destroy:71:5)
    at abortIncoming (node:_http_server:700:9)
    at socketOnClose (node:_http_server:694:3)
    at TLSSocket.emit (node:events:525:35)
    at TLSSocket.emit (node:domain:489:12)

我试图解决这个问题的东西,

1-我在github上读过一些问题,指出使用具有强大功能的some解析器有时会产生这个问题,但是当我删除它时,没有什么改变。

增加超时时间也没有什么帮助。3-我读过一个叫做“无服务器强大”的软件包,但是我不知道在哪里使用它,因为管理员内部使用强大。

怎样才能解决这个问题?

我正在使用的版本

代码语言:javascript
复制
Node.js: 18.7.0  
@adminjs/express: "^5.0.0",
@adminjs/mongoose: "^3.0.0",
@adminjs/passwords: "^3.0.0",
@adminjs/upload: "^3.0.0",
adminjs: "^6.0.1",
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-13 11:45:47

我已经知道问题出在哪里,服务器在文件上传之前就超时了,我的解决方案是延长服务器本身的超时时间和http请求,直到文件能够上传为止。然而,,这并不是真正的推荐,因为这可能会使网站容易受到攻击。这只是一个暂时的解决办法。另一种解决方案是使用socket.io,我还没有尝试过,但我计划这样做。

延长时间:

代码语言:javascript
复制
server.timeout = 25 * 60000;
server.headersTimeout = 25*60000;
server.keepAliveTimeout = 25 * 60000;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73278725

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档