简介
tiz-multer 是一个方便易用的 Node.js 模块,用于处理 HTTP POST 请求中的文件上传,支持多个文件上传同时处理,并且支持文件类型过滤和文件大小限制。
安装
在 Node.js 环境中使用 npm 安装 tiz-multer 模块:
npm install tiz-multer
使用方法
tiz-multer 的使用非常简单,只需要创建一个 Multer 实例,然后使用其 multer()
方法即可。
const Multer = require('tiz-multer'); const upload = Multer().multer();
在 Express.js 中,你可以将 upload 中间件应用在具体的路由中:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ---------------------- ----- --- - ---------- ----- ------ - ------------------ ------------------- ---------------------- ----- ---- -- - ----- ---- - --------- ------------------ --------------- ---
其中,'file'
是上传文件的字段名称,也就是前端表单中 input 标签的 name 属性值。
文件类型过滤
可以使用 Multer().filter()
方法在上传文件之前对文件类型进行过滤。filter
方法接受一个函数作为参数,该函数将在上传文件之前被调用,并且接受一个 req
和 file
参数,分别表示请求和上传的文件信息。如果这个函数返回了 true
,则表示该文件合法,否则表示该文件不合法,将不会被上传。
下面是一个示例代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ---------------------- ----- --- - ---------- ----- ------ - -------- ----------- -------- ----- ----- --- - -- ----- --- - --- ----- ----- ---------------- - ------------- ------------- -- ------------------------------------------ - -------- ------ - ---- - ------ ----------- --- --- --- ----- --- ----------- - - ------------ ------------------- ---------------------- ----- ---- -- - ----- ---- - --------- ------------------ --------------- ---
文件大小限制
可以使用 Multer().limits()
方法设置上传文件大小的限制。limits
方法接受一个对象作为参数,该对象包含以下两个属性:
fieldNameSize
:字段名的最大字节数,默认为 100。fileSize
:上传文件的最大字节数,默认为 1 MB,即 1048576 字节。
下面是一个示例代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ---------------------- ----- --- - ---------- ----- ------ - -------- ------- - -------------- ---- -- ----------- --- -- --------- -- - ---- - ---- -- ---------- -- -- - ------------ ------------------- ---------------------- ----- ---- -- - ----- ---- - --------- ------------------ --------------- ---
完整示例
下面是一个完整的示例代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ---------------------- ----- --- - ---------- ----- ------ - -------- ------- - --------- -- - ---- - ---- -- ------------ -- -- -- ----------- -------- ----- ----- --- - -- ----- --- - --- ----- ----- ---------------- - ------------- ------------- -- ------------------------------------------ - -------- ------ - ---- - ------ ----------- --- --- --- ----- --- ----------- - - ------------ ------------------- ---------------------- ----- ---- -- - ----- ---- - --------- ------------------ --------------- --- ---------------- -- -- - ------------------- ------- -- ---- ------- ---
结语
tiz-multer 是一个方便易用的 Node.js 模块,适用于处理 HTTP POST 请求中的文件上传。通过本文的介绍,相信读者已经掌握了 tiz-multer 的基本使用方法并可以实现常用的文件上传功能。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055adb81e8991b448d87e8