npm 包 @loopback/rest 使用教程

阅读时长 5 分钟读完

简介

@loopback/rest 是一个基于 Node.js 的微服务框架,专为构建高度可扩展的 RESTful 应用程序而设计。它使用现代的、可维护的设计模式和最佳实践增加开发人员的工作效率。

特性

  • 自动创建 API 文档
  • 基于 OpenAPI 规范
  • 支持多个数据源
  • 内置验证
  • 自定义响应处理
  • 可扩展和灵活的中间件
  • 支持共享模块
  • 内置测试工具

安装

使用 npm 可以方便地安装 @loopback/rest,运行以下命令:

使用

基础示例

首先,让我们创建一个简单的示例应用程序。

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

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

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

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

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

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

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

我们创建了一个 RestServer 实例,并将 MyController 注册为控制器。然后我们将该实例绑定到应用程序上下文中的 REST 密钥,最后启动服务器。注意,在这个例子中我们绑定的是 RestServer 实例,但在应用程序中我们通常使用自己的类来绑定各种信息。

让我们看一下控制器中的方法。@get@post 装饰器分别表示 GET 和 POST HTTP 请求,@del 装饰器表示 DELETE HTTP 请求。方法的名字表示请求的路径。这些方法返回要发送到客户端的数据。在 @post 请求中,我们接收 body 数据并将其返回。在 @del 请求中,我们有一个参数从路径参数中取出。

如果我们现在运行该示例,我们将获得以下输出:

中间件示例

中间件是在请求和响应到达控制器之前和之后执行的代码。@loopback/rest 允许您使用现有的中间件或编写自己的中间件。

以下是一个简单的中间件,它打印请求数据:

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

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

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

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

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

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

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

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

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

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

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

在这个例子中,我们引入了 express 对象并创建了一个名为 LoggingMiddleware 的类,该类实现了 RestMiddleware 接口。handle 方法接收一个 Request 和 Response 对象以及一个回调函数。在 handle 方法中,我们打印了请求数据并调用了下一个回调函数。在 MyController 中注册的方法将在 handle 方法之后执行。

结论

在本教程中,我们介绍了如何使用 @loopback/rest 构建 Node.js 应用程序。我们展示了如何创建控制器、使用中间服务和添加自定义中间服务。希望这个教程对你有帮助!

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