• 日常搜索
  • 百度一下
  • Google
  • 在线工具
  • 搜转载

使用json-server启动并运行假REST API

在本教程中,您将了解如何开始使用json-server设置和使用假的rest api服务器,您可以在开发移动或 Web 应用程序时使用它。本教程假设您具备 JSON 和 HTTP 请求的基本知识。

什么是 REST?

REST 代表具象状态转移。它是一种用于设计连接应用程序的架构风格。它使用简单的 HTTP 使机器之间的通信成为可能。因此,REST 不是使用 URL 来操作某些用户信息,而是向 URL 发送 HTTP 请求(如 GET、post、DELETE 等)来操作数据。 

例如,不是向像 那样的 URL 发出 GET 请求,而是/deleteuser?id=10DELETE /user/10.

为什么我们需要一个虚假的 REST API?

REST API 构成了移动和 Web 应用程序的后端。在开发应用程序时,有时您不会准备好用于开发目的的 REST API。要查看移动或 Web 应用程序的运行情况,我们需要一个服务器,该服务器会抛出一些虚拟 JSON 数据。 

这就是假的 REST API 出现的时候。json-server提供以最少的工作量设置假 REST API 服务器的功能。

入门

要开始使用json-server,请使用节点包管理器 (npm) 安装包。

npm install -g json-server

根据您的要求创建一个包含一些数据的虚拟 JSON 文件。例如,我需要一些带有用户信息的 JSON 数据,如 id、姓名、位置等。所以我将创建一个文件info.json,并使用以下 JSON 信息调用:

{
    "users": [{
        "id": 1,
        "name": "roy",
        "location": "india"
    }, {
        "id": 2,
        "name": "sam",
        "location": "wales"
    }]
}

从终端运行 json 服务器info.json作为数据源,您应该在http://localhost:3000运行 REST API 。 

json-server info.json

测试 REST API 端点

由于我们的假 REST API 服务器已启动并正在运行,让我们看看如何使用客户端访问 REST API。我正在使用 Postman REST 客户端进行 API 调用。 

获取请求

让我们首先GET向 REST URL 发出请求。在 json 文件中,我们定义了一个端点users,其中包含与用户相关的信息。GET向 URL http://localhost:3000/users发出请求时,它应该显示现有数据。

[
  {
    "id": 1,
    "name": "roy",
    "location": "india"
  },
  {
    "id": 2,
    "name": "sam",
    "location": "wales"
  }
]

POST 请求

为了向现有数据添加新数据,我们将向URL http://localhost:3000/usersPOST发出请求这是请求的样子:POST

使用json-server启动并运行假REST API  第1张

尝试发出GET请求,您应该在info.json文件中包含新添加的数据。

[
  {
    "id": 1,
    "name": "roy",
    "location": "india"
  },
  {
    "id": 2,
    "name": "sam",
    "location": "wales"
  },
  {
    "name": "ii",
    "location": "la",
    "id": 7
  },
  {
    "name": "Shona",
    "location": "LA",
    "id": 8
  },
  {
    "name": "Shona",
    "location": "LA",
    "id": 9
  }
]

删除请求

要从json-server数据中删除条目,您需要DELETE使用用户 ID 向 API 端点发送请求。例如,要删除 ID 为 1 的用户,您需要向DELETE端点http://localhost:3000/users/1发送请求。删除后,尝试执行GET请求,ID 为 1 的用户不应在返回的 JSON 中。

补丁请求

要更新现有条目,您需要发送一个PATCH请求,其中包含需要为该特定条目更新的详细信息。例如,为了更新 ID 为 2 的用户的详细信息,我们将向URL http://localhost:3000/users/2PATCH发送请求, 如下所示: 

使用json-server启动并运行假REST API  第2张

搜索 json-server REST API

使用json-serverREST API,您可以搜索数据以根据特定条件查找数据。例如,为了查找具有特定名称的用户,您需要向 REST API URL 发送 GET 请求,如下所示:

使用json-server启动并运行假REST API  第3张

如上图所示,向 URL  http://localhost:3000/users?name=Shona发送 GET 请求 将返回具有 name 的用户Shona同样,要搜索具有任何其他字段的用户,您需要将该字段添加到查询字符串中。

为了跨 REST API 端点执行全文搜索,您需要将搜索字符串与参数一起添加到端点q例如,为了使用包含搜索字符串s的信息搜索用户,请求将如下所示:

使用json-server启动并运行假REST API  第4张

处理分页

在显示分页数据网格时,需要根据分页获取一些数据。在这样的场景ios中,json-server提供了对 JSON 数据进行分页的功能。默认情况下,返回的数据计数json-server为 10。我们可以使用_limit参数显式定义此限制。  

http://localhost:3000/users?_limit=5

对上述 URL 的 GET 请求将返回 5 条记录。现在,要对数据进行分页,我们需要向 _pageURL 添加另一个参数。_page 定义返回数据时需要获取的页面。

http://localhost:3000/users?_limit=5&_page=2

对上述 URL 的 GET 请求将返回数据集的第二页,每页有 5 条记录。通过更改_page变量,我们可以获取所需的页面记录。 

处理排序

json-server提供对检索到的数据进行排序的功能。我们可以通过提供需要排序的列名和数据需要排序的顺序来对数据进行排序。默认情况下,数据按升序排序。我们可以使用关键字在端点 URL 中提供列名,并使用关键字_sort定义顺序_order这是一个示例网址:

http://localhost:3000/users?_sort=id&_order=DESC

上面的 URL 将根据 column 对数据Id进行排序,并按降序排序。

处理运算符

json-server还提供支持运算符的功能,例如查找 Id 在两个值之间的范围内的条目或匹配特定正则表达式的条目。 

为了在特定范围内查找条目,我们可以使用_gteand_lte运算符。例如,要查找 ID 大于 1 且小于 2 的用户,请向 URL  http://localhost:3000/users?id_gte=1&id_lte=2发出 GET 请求, 如下所示:

使用json-server启动并运行假REST API  第5张

如果我们想搜索以某个字母开头的名字,我们可以使用正则表达式。例如,要搜索以字母开头的名称sa,我们将使用_like运算符并向GETURL  http://localhost:3000/users?name_like=^sa发出请求。

使用json-server启动并运行假REST API  第6张

结论

在本教程中,您了解了如何使用json-serverREST API 创建一个虚拟数据库以供快速使用。您学习了如何开始使用json-server 和查询 URL 来添加、更新、修改和删除数据。您了解了如何对虚拟数据进行分页、排序和搜索。您还了解了如何使用运算符来使用正则表达式搜索条目。

文章目录
  • 什么是 REST?
  • 为什么我们需要一个虚假的 REST API?
  • 入门
  • 测试 REST API 端点
    • 获取请求
    • POST 请求
    • 删除请求
    • 补丁请求
  • 搜索 json-server REST API
  • 处理分页
  • 处理排序
  • 处理运算符
  • 结论