npm 包 express-formidable 使用教程

阅读时长 4 分钟读完

在 Node.js 的 web 开发中,我们常常需要处理上传的文件,而 express-formidable 是一个处理表单数据和文件上传的 npm 包,可以让我们的表单数据处理更加简单方便。本文将介绍 express-formidable 的使用方法。

安装 express-formidable

在使用 express-formidable 之前,我们需要先安装它。在终端中输入以下命令:

处理文件上传

接下来,我们将演示如何使用 express-formidable 处理文件上传。

-- -------------------- ---- -------
----- ------- - ------------------
----- --- - ---------
----- -------------------- - -----------------------------

-------------------------------

------------------- ----- ---- -- -
  ----- - ----- - - ---

  ------------------

  ----------------
--

---------------- -- -- -
  -----------------------
--

在上面的代码中,我们首先引入了必要的依赖包并创建了一个 Express 应用实例。接着,我们使用 app.use 方法将 express-formidable 中间件集成到应用中。最后,我们使用 app.post 方法创建了一个 POST 接口,用于接收上传的文件。在代码中,req.files 会返回上传的文件对象。

处理表单数据

在使用 express-formidable 处理表单数据时,我们需要设置一些参数,如上传文件最大大小、文件类型白名单、提交表单字段白名单等。

-- -------------------- ---- -------
----- ------- - ------------------
----- --- - ---------
----- -------------------- - -----------------------------

------------------------------
  --------- --------
  ---------- ------------
  ------------ - - ---- - -----
  --------------- -----
  ---------- -----
  ----- ------
  ----- ------------
  --------- -------------------
  ---------- -------- -------
  -------------- ----
---

------------------- ----- ---- -- -
  ----- - ------ - - ---

  -------------------

  ----------------
--

---------------- -- -- -
  -----------------------
--

在上面的代码中,我们设置了一些参数:

  • encoding:表单编码方式,默认为 utf-8。
  • uploadDir:文件上传目录,必须存在且可写,否则上传会失败。
  • maxFileSize:上传文件的最大大小,单位为字节。默认为 20 MB。
  • keepExtensions:是否保存文件的扩展名,默认为 false。
  • multiples:是否支持上传多个文件,默认为 false。
  • hash:文件名是否需要用 md5 哈希,默认为 false。
  • type:表单类型,默认为 multipart。
  • mimetype:上传文件的 MIME 类型,默认为 text/plain。
  • whitelist:提交表单字段白名单,只有出现在白名单中的字段才会被处理。
  • rejectUnknown:是否拒绝处理未知的表单字段,默认为 false。

在代码中,req.fields 会返回表单提交的字段值。注意:使用 express-formidable 处理表单数据并不会替代原生的 bodyParser 中间件,如果还需要使用 bodyParser,请将它放在 express-formidable 的后面。

总结

到此,本文介绍了 express-formidable 的使用方法,包括处理文件上传和表单数据。如果你是一个 Node.js 开发者,相信 express-formidable 能够帮助你更好地处理表单数据和文件上传,提高开发效率。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/63916

纠错
反馈