返回顶部
首页 > 资讯 > 前端开发 > node.js >node中multer的概念是什么
  • 960
分享到

node中multer的概念是什么

2024-04-02 19:04:59 960人浏览 薄情痞子
摘要

这篇文章主要介绍“node中multer的概念是什么”,在日常操作中,相信很多人在node中multer的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”node中m

这篇文章主要介绍“node中multer的概念是什么”,在日常操作中,相信很多人在node中multer的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”node中multer的概念是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

在node中,multer是一个用于处理“multipart/fORM-data”类型数据格式的中间件,主要用于上传文件;该中间件在解析完请求体后,会向Request对象中添加一个body对象和一个file或files对象。

本文操作环境:windows10系统、nodejs 12.19.0版、Dell G3电脑。

node中multer是什么意思

Multer 是一个 node.js 中间件,用于处理 multipart/form-data 类型的表单数据,它主要用于上传文件。它是写在 busboy 之上非常高效。

注意: Multer 不会处理任何非 multipart/form-data 类型的表单数据

Multer在解析完请求体后,会向Request对象中添加一个body对象和一个file或files对象(上传多个文件时使用files对象 )。

其中,body对象中包含所提交表单中的文本字段(如果有),而file(或files)对象中包含通过表单上传的文件。

Tips:multipart/form-data是用来指定传输数据的特殊类型的,主要就是我们上传的非文本的内容,比如图片或者mp3等等

const express = require('express')
const multer  = require('multer')
const app = express()
const storage = multer.diskStorage({
  //保存路径
  destination: function (req, file, cb) {
    cb(null, '/tmp/my-uploads')
    //注意这里的文件路径,不是相对路径,直接填写从项目根路径开始写就行了
  },
  //保存在 destination 中的文件名
  filename: function (req, file, cb) {    
    cb(null, file.fieldname + '-' + Date.now())
  }
})
const upload = multer({ storage: storage })
app.post('/profile', upload.single('avatar'), function (req, res, next) {
  // req.file 是 `avatar` 文件的信息
  // req.body 将具有文本域数据,如果存在的话
})
app.post('/photos/upload', upload.array('photos', 12), function (req, res, next) {
  // req.files 是 `photos` 文件数组的信息
  // req.body 将具有文本域数据,如果存在的话
})
const cpUpload = upload.fields([{ name: 'avatar', maxCount: 1 }, { name: 'gallery', maxCount: 8 }])
app.post('/cool-profile', cpUpload, function (req, res, next) {
  // req.files 是一个对象 (String -> Array) 键是文件名,值是文件数组
  // 例如:
  //  req.files['avatar'][0] -> File
  //  req.files['gallery'] -> Array
  // req.body 将具有文本域数据,如果存在的话
})

multer(options)

Multer 接受一个 options 对象,其中最基本的是 dest 属性,这将告诉 Multer 将上传文件保存在哪。如果你省略 options 对象,这些文件将保存在内存中,永远不会写入磁盘。

通常,一般的网页应用,只需要设置 dest 属性,像这样:

const upload = multer({ dest: 'uploads/' })

如果你想在上传时进行更多的控制,你可以使用 storage 选项替代 dest。Multer 具有 DiskStorage 和 MemoryStorage 两个存储引擎; 另外还可以从第三方获得更多可用的引擎。

到此,关于“node中multer的概念是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: node中multer的概念是什么

本文链接: https://lsjlt.com/news/97334.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • node中multer的概念是什么
    这篇文章主要介绍“node中multer的概念是什么”,在日常操作中,相信很多人在node中multer的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”node中m...
    99+
    2024-04-02
  • node中mongooes的概念是什么
    这篇文章主要介绍“node中mongooes的概念是什么”,在日常操作中,相信很多人在node中mongooes的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”no...
    99+
    2024-04-02
  • node中token的概念是什么
    这篇文章主要讲解了“node中token的概念是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“node中token的概念是什么”吧! ...
    99+
    2024-04-02
  • node转发的概念是什么
    本篇内容主要讲解“node转发的概念是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“node转发的概念是什么”吧! node转发...
    99+
    2024-04-02
  • node环境中npm的概念是什么
    这篇文章主要介绍“node环境中npm的概念是什么”,在日常操作中,相信很多人在node环境中npm的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”node环境中n...
    99+
    2024-04-02
  • jquery中$的概念是什么
    这篇文章主要讲解了“jquery中$的概念是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jquery中$的概念是什么”吧! ...
    99+
    2024-04-02
  • linux中gnu的概念是是什么
    GNU是一种自由和开放源代码的操作系统,其全称为“GNU's Not Unix”。GNU项目由理查德·斯托曼(Richard Sta...
    99+
    2023-09-22
    linux
  • MySQL中锁的概念是什么
    今天就跟大家聊聊有关MySQL中锁的概念是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。乐观锁乐观锁大多是基于数据版本记录机制实现,一般是给数据...
    99+
    2024-04-02
  • mysql中odbc的概念是什么
    今天小编给大家分享一下mysql中odbc的概念是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了...
    99+
    2024-04-02
  • css3中flexbox的概念是什么
    本文小编为大家详细介绍“css3中flexbox的概念是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“css3中flexbox的概念是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学...
    99+
    2024-04-02
  • JavaScript中ceil的概念是什么
    本篇内容主要讲解“JavaScript中ceil的概念是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript中ceil的概念是什么”吧! ...
    99+
    2024-04-02
  • jquery中show的概念是什么
    这篇文章主要介绍了jquery中show的概念是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇jquery中show的概念是什么文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2024-04-02
  • jquery中toggle的概念是什么
    本篇内容主要讲解“jquery中toggle的概念是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“jquery中toggle的概念是什么”吧! ...
    99+
    2024-04-02
  • react中hook的概念是什么
    本文小编为大家详细介绍“react中hook的概念是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“react中hook的概念是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识...
    99+
    2024-04-02
  • react中setstate的概念是什么
    这篇文章主要介绍“react中setstate的概念是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“react中setstate的概念是什么”文章能帮助大家解决...
    99+
    2024-04-02
  • css3中transition的概念是什么
    今天小编给大家分享一下css3中transition的概念是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我...
    99+
    2024-04-02
  • jquery中prev的概念是什么
    本文小编为大家详细介绍“jquery中prev的概念是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“jquery中prev的概念是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新...
    99+
    2024-04-02
  • css3中bfc的概念是什么
    这篇文章主要介绍“css3中bfc的概念是什么”,在日常操作中,相信很多人在css3中bfc的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”css3中bfc的概念是...
    99+
    2024-04-02
  • nodejs中lts的概念是什么
    这篇文章主要介绍“nodejs中lts的概念是什么”,在日常操作中,相信很多人在nodejs中lts的概念是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”nodejs中l...
    99+
    2024-04-02
  • ajax中url的概念是什么
    这篇文章主要讲解了“ajax中url的概念是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ajax中url的概念是什么”吧! ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作