Bei*_*man 13 multipartform-data node.js express multer
我是Node世界的新手.
UseCase:
有一个简单的方案是在Angular前端上传XLS文件,在Node上处理它们,进行一些操作然后将JSON保存到Mongo DB上.
从角接收文件后,我在寻找什么是解析/工艺节点上的一个文件,然后在文章来到这些著名节点模块的最佳方式- multer,multiparty和connect-multiparty.
每篇文章都解释了如何使用相应的模块,找不到任何一个告诉哪一个使用的时候.
我发现这multer主要用于您尝试将文件保存在磁盘存储上并且不足以满足我的用例.
我应该忽略multer或实际使用它吗?
我什么时候应该使用multiparty和connect-multiparty?
Sim*_*n D 11
这个问题列出了一些选项:
有一些模块可以直接解析多种形式的数据,并在这些模块之上构建中间件.
Github明星直接解析的前三个模块是node-stridable(3376),busboy(814),node-multiparty(557).
顶级中间件是multer(建立在busboy,2515星).connect-multiparty有一个提示不要使用它的注释.connect-busboy四年没有更新.
基于此,如果你想要Express中间件,我建议使用node-formidable,busboy或multer.
另请注意,multer具有MemoryStorage内存存储引擎.
您可以将可用的文件处理库分为三类:它们是独立的还是 Express.js 特定的,它们是存储中间文件还是使用流,以及中间文件是存储在临时目录中还是内存中。
像 busboy 这样的独立解析器可以在有或没有 Express.js 的情况下使用。另一方面,Express.js 中间件通过添加req.files您可以方便地访问文件来增强请求对象。一些实现将中间文件存储在临时目录或内存中。其他人让您访问上传的文件内容流,而不会破坏服务器的内存或硬盘。
根据您的情况,提出这些问题以确定哪个库最适合您。
然后使用此决策树从最常用的文件上传处理库列表中选择一个。决策树来自文章:
选择 Formidable、Busboy、Multer 和 Multiparty 来处理文件上传

| 归档时间: |
|
| 查看次数: |
8271 次 |
| 最近记录: |