当我尝试使用 createReadStream 通过 apollo-server 上传文件时出现此错误,

Posted

技术标签:

【中文标题】当我尝试使用 createReadStream 通过 apollo-server 上传文件时出现此错误,【英文标题】:I get this error when I try to upload a file with apollo-server using createReadStream , 【发布时间】:2021-03-30 13:22:53 【问题描述】:

RangeError: 超出最大调用堆栈大小 在 ReadStream.open (C:\Users\sofia\OneDrive\Bureau\project\backend\node_modules\apollo-server-core\node_modules\fs-capacitor\lib\index.js:80:7) 在 _openReadFs (internal/fs/streams.js:138:12) 在读取流。 (内部/fs/streams.js:131:3) 在 ReadStream.deprecated [as open] (internal/util.js:89:15) 在 ReadStream.open (C:\Users\sofia\OneDrive\Bureau\project\backend\node_modules\apollo-server-core\node_modules\fs-capacitor\lib\index.js:90:11) 在 _openReadFs (internal/fs/streams.js:138:12) 在读取流。 (内部/fs/streams.js:131:3) 在 ReadStream.deprecated [as open] (internal/util.js:89:15) 在 ReadStream.open (C:\Users\sofia\OneDrive\Bureau\project\backend\node_modules\apollo-server-core\node_modules\fs-capacitor\lib\index.js:90:11) 在 _openReadFs (internal/fs/streams.js:138:12) 在读取流。 (内部/fs/streams.js:131:3) 在 ReadStream.deprecated [as open] (internal/util.js:89:15) 在 ReadStream.open (C:\Users\sofia\OneDrive\Bureau\project\backend\node_modules\apollo-server-core\node_modules\fs-capacitor\lib\index.js:90:11) 在 _openReadFs (internal/fs/streams.js:138:12) 在读取流。 (内部/fs/streams.js:131:3) 在 ReadStream.deprecated [as open] (internal/util.js:89:15) [nodemon] 应用程序崩溃 - 启动前等待文件更改...enter image description here

【问题讨论】:

this question 有用吗? 【参考方案1】:

似乎是 apollo-server 的现有问题

您可以在此处找到解决方案: https://github.com/apollographql/apollo-server/issues/3508

一种解决方案是将节点降级到 12.x

【讨论】:

谢谢,这个我早就知道了,我只是希望有其他的解决方案!看来在阿波罗决定解决问题之前没有其他解决方案

以上是关于当我尝试使用 createReadStream 通过 apollo-server 上传文件时出现此错误,的主要内容,如果未能解决你的问题,请参考以下文章

NodeJs - 使用 fs.createReadStream 读取文件时出错

TypeScript 中 createReadStream 的类型应该是啥?

使用 webdav 在节点 js 中迭代 createreadstream 下载空文件

request() 和 fs.createReadStream() 没有返回“正确”的值

Nodejs fs.createReadStream无法读取Firebase Storage下载URL“ ENOENT:无此类文件或目录”

节点 js .10 fs.createReadStream 流 2 结束事件未触发