首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在fs.promises中使用fs.createReadstream

如何在fs.promises中使用fs.createReadstream
EN

Stack Overflow用户
提问于 2019-05-10 17:01:43
回答 3查看 4.5K关注 0票数 6

我使用require("fs").promises只是为了避免使用回调函数。

但现在,我还想使用fs.createReadstream附加一个带有POST请求的文件。

我该怎么做呢?或者在这种情况下是什么改变了createReadstream?或者我应该使用require("fs")

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-04-07 01:29:10

因此,通过使用const fs = require('fs').promises;,您只能访问promise版本的fs模块。根据规范,在File System Promises API中没有对等的createReadStream条目。如果您需要该功能,除了fs的简化版本之外,还需要存储对它的引用。

我鼓励任何阅读本文的人在您的文件的顶部使用以下内容,以包含promises api和createReadStreams功能。

代码语言:javascript
运行
复制
const fs = require('fs').promises;
const createReadStream = require('fs').createReadStream;

您创建的readstreams将如下所示(注意,不再包含预先添加的fs.):

代码语言:javascript
运行
复制
createReadStream('/your/path/here');

同样重要的是要注意:

根据规范,您最终会希望使用以下内容(免责声明,当前的开箱即用节点在没有特定标志/依赖项的情况下无法做到这一点)

代码语言:javascript
运行
复制
import { createReadStream } from 'fs';
票数 4
EN

Stack Overflow用户

发布于 2019-05-10 17:09:30

你的问题有点宽泛,但我可以向你推荐一些有用的套餐。它并没有涵盖几乎所有的函数,但是fs-extra包会自动让很多fs函数返回一个promise,我绝对建议这样做。然后你可以同时使用常规的fs。至于fs.createReadStream(),您可能只想将所需的内容包装在new Promise()中。

票数 1
EN

Stack Overflow用户

发布于 2021-10-25 06:19:19

我是这样做的:

代码语言:javascript
运行
复制
import { promises as fs, createReadStream } from "fs"

await fs.mkdir("path...");

const buff = createReadStream("path ...")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56074148

复制
相关文章

相似问题

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