CNode

那位小伙伴有egg-multipart 上传文件的demo? 或者egg其他上传文件的demo,谢谢了

问答
Ddpc761218914发布于8 年前最后回复8 年前8 回复5829 浏览0 收藏

eggjs的examples中的dome没有用到egg-multipart https://github.com/eggjs/examples/tree/master/multipart

查看回复

回复 (8)

Z
zhangmingfeng#1·8 年前

controller里: const stream = await this.ctx.getFileStream(); const writeStream = fs.createWriteStream('/path/to/savefile'); await awaitWriteStream(stream.pipe(writeStream)); const stat = fs.statSync('/path/to/savefile'); console.log(stat);

A
atian25#2·8 年前

谁说那个示例没用到。。。

D
dpc761218914#3·8 年前
引用 atian25谁说那个示例没用到。。。

@atian25 抱歉,因为我看到https://github.com/eggjs/examples/tree/master/multipart 中的package.json未安装egg-multipart模块。连multipart模块也没有看到安装,文档个egg教程中的https://eggjs.org/zh-cn/plugins/multipart.html 代码不太一样···

D
dpc761218914#4·8 年前
引用 zhangmingfengcontroller里: const stream = await this.ctx.getFileStream(); const writeStream = fs.createWriteSt...

@zhangmingfeng 感谢,好像就是输入输出流的问题哈? 请问一下,如果这个上传下载大一点的文件,如果获取上传下载的进度条呢? socket.io??

Z
zhangmingfeng#5·8 年前
引用 dpc761218914@zhangmingfeng 感谢,好像就是输入输出流的问题哈? 请问一下,如果这个上传下载大一点的文件,如果获取上传下载的进度条呢? socket.io??

@dpc761218914 进度在前端做啊,前端的xmlhttprequest有progress回调的。另外,大文件建议分片上传和断点续传

来自酷炫的 CNodeMD

D
dpc761218914#7·8 年前
引用 atian25@dpc761218914 egg multipart 是 egg 内置的

@atian25 感谢,后来详细看,才发现egg工程里面有。

D
dpc761218914#8·8 年前

自己参考官方实例写了一个demo,https://github.com/dpc761218914/egg-upload

参与回复
登录后即可参与回复。登录