更新到节点 10-高山 - ERR_STREAM_CANNOT_PIPE后



在我将服务器节点JS更新为节点10-alpine版本后,我开始收到下一个错误

错误 [ERR_STREAM_CANNOT_PIPE]:无法管道,不可读。

我必须提到,对于节点 8-alpine,这段代码可以工作(我尝试过回滚(

在我的代码中,我正在尝试从 GCloud 返回文件:

try {
const file = await 
gcs.bucket(`BUCKET_NAME`).file(filePath);
if (file) {
const results = await file.getMetadata();
const stream = await file.createReadStream();
return res.pipe(stream);
else {
return send(res, 403)
}
}
else {
return send(res, 404);
}
} catch (err) {
console.error(err);
return send(res, 500);
}

升级到节点 -10 -alpine 后是否有人遇到过这样的问题?

正是错误所说的。res.pipe(steam)附加可写流,stream可读流res。但stream是一条溪流。读。请改用fs.createWriteStream(...)file.createWriteStream(...)。这在以前可能有效,因为您的gcs.bucket(...).file(...)函数返回一个带有可写文件描述符的文件。所以这可能是鸭子打字出错的情况。

相关内容

最新更新