npm 包 parse-server-fs-store-adapter 使用教程

阅读时长 9 分钟读完

介绍

在构建 web 应用程序时,经常需要将文件上传到服务器。parse-server-fs-store-adapter 是一种可用于存储和检索 parse-server 文件的 npm 包。它提供了一个简单的接口,使您可以将文件接收到本地文件系统。

parse-server-fs-store-adapter 的功能

  • 使用简单
  • 本地文件系统存储
  • 多种选项配置
  • 兼容 parse-server

安装

首先,您需要安装 parse-server-fs-store-adapter 包:

配置

为了使用 parse-server-fs-store-adapter 包,您需要修改 parse-server 配置选项。在 parse-server 配置中,您需要指定 fsAdapter:

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

在这个例子中,我们使用文件系统适配器提供的 FileSystemAdapter,使用 filesSubDirectory 参数指定用于存放上传的文件的子目录(默认路径为 ./parse-server-files),同时使用内置的文件适配器 filesAdapter,并在创建文件时使用 fs.createWriteStream() 方法。

使用

上传文件

接下来,我们将说明如何使用 multer 中间件和 parse-server-fs-store-adapter 连接上传的文件。

首先,您需要引入 multer 和 parse-server-fs-store-adapter 包:

接着,在您的路由处理程序中配置 multer 中间件:

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

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

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

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

在这个例子中,我们使用 multer.memoryStorage() 方法创建了内存存储,使用 multer({ storage }) 创建 multer 中间件,并在路由处理程序中配置了该中间件。upload.single('file') 表示只上传单个文件,其中 file 参数表示上传字段的名称。在用户上传文件后,我们使用 FileSystemStoreAdapter 实例来将文件存储在文件系统中。

获取文件

您可以使用以下代码从文件系统中检索文件:

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

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

在这个例子中,我们使用 FileSystemStoreAdapter 实例来获取文件,并使用 res.contentType()res.send() 方法将文件发送到客户端。

示例代码

以下是完整的示例代码:

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

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

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

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

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

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

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

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

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

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

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

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

总结

parse-server-fs-store-adapter 包使文件上传和检索变得非常简单,同时提供了多种配置选项以及兼容 parse-server。希望通过这篇文章,您对于使用 parse-server-fs-store-adapter 进行文件存储的方式有了更深入的了解。

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

纠错
反馈