npm 包 @feathersjs/feathers 使用教程

阅读时长 6 分钟读完

什么是 @feathersjs/feathers?

@feathersjs/feathers 是一个 Node.js 上的开源框架,它允许您快速编写现代、可扩展的应用程序。它提供了一种简单的方式来构建 RESTful API、WebSockets 和实时应用程序。

@feathersjs/feathers 基于 Express,它是一个流行的 Node.js Web 框架。@feathersjs/feathers 也允许您轻松地与其他前端框架和库集成,例如 React 和 Vue。

如何安装 @feathersjs/feathers

安装 @feathersjs/feathers 最简单的方法是使用 npm 包管理器。在您的项目文件夹中运行以下命令来安装 @feathersjs/feathers:

如何使用 @feathersjs/feathers

下面是一个使用 @feathersjs/feathers 创建 RESTful API 的例子:

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

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

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

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

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

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

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

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

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

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

在这个例子中,我们创建了一个名为 MessageService 的类,它是一个可被 Feathers 应用程序调用的服务。MessageService 有两个方法,一个是 find 方法,用于查询数据库并返回所有消息,一个是 create 方法,用于保存新消息并返回创建的消息。

我们将 MessageService 添加到 Feathers 应用程序中,并将其映射到路由 /messages 上。这使我们能够访问 /messages GET 和 POST。

在 Feathers 应用程序中,所有服务都需要实现一些基本方法,这些方法包括:find、get、create、update 和 remove。我们只实现了 find 和 create,但其他方法也可以按照相似的方式实现。

在示例中,我们使用了一个 Node.js 库 express,它是一个流行的 Web 框架,可以帮助我们构建 RESTful API。

如何扩展 @feathersjs/feathers

Feathers 允许您通过使用许多不同的插件来扩展它。这些插件可以添加各种功能,包括:数据库集成、身份验证、实时 WebSockets 和更多。

以下是一个使用 @feathersjs/authentication-local 插件验证登录的例子:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

在这个例子中,我们扩展了 UserService,我们使用了一个“内存”数据库(feathers-memory)来存储用户信息。我们还添加了一个 login 路由,用于验证用户信息并返回 JSON Web Token 作为响应。

我们使用了 @feathersjs/authentication 插件和 @feathersjs/authentication-local 插件来处理身份验证,这使我们可以使用基于用户名和密码的身份验证方式。

总结

@feathersjs/feathers 是一个灵活的框架,它使得构建 RESTful API 和实时应用程序变得非常简单。通过使用不同的插件,您可以将其扩展到许多不同的用例。我们希望本文可以帮助您开始使用 @feathersjs/feathers 并将其集成到您的应用程序中。

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