使用 JSON server创建 REST API

在本教程中,我们将了解 JSON 服务器。

假设您是前端开发人员,需要将后端调用与 REST API 集成,但您从后端团队得知 REST API 尚未完成,需要一些时间来进行编码。你现在将如何进行?

JSON 服务器可以通过模拟 REST API 在这些情况下为您提供帮助。JSON 服务器提供虚假的 REST API,无需任何编码即可用于模拟和测试。

JSON Server 是一个简单的项目,可帮助您快速设置具有 CRUD 操作的 REST API。

请注意 JSON 服务器作为 NPM 包提供,因此您需要在您的机器上安装 NPM。
让我们开始使用 JSON 服务器。

第 1 步:安装 JSON 服务器。

npm install -g json-server

-g 选项用于确保 JSON 服务器全局安装在机器上。

第 2 步:创建名为 countries.json 的 JSON 文件来模拟数据。

countries.json
{
  "countries": [
    {
      "id": 1,
      "name": "India",
      "population": "40000"
    },
    {
      "id": 2,
      "name": "Nepal",
      "population": "5000"
    }
  ]
}

在终端中运行以下命令。

json-server –watch countries.json

基于 country.json,这里有一些 Rest API 的默认路由。

GET /countries
GET /countries/1
POST /countries
PUT /countries/1
PATCH /countries/1
DELETE /countries/1

第 3 步:转到浏览器并浏览此 URL “http://localhost:3000/countries”。

在进行请求时请注意以下几点。

  • 您可以执行 PUT、POST 和 DELETE 请求,更改将反映在 countries.json 中。
  • 请求正文应包含对象。
  • Id 值是不可变的,不能更改。如果您将 Id 放入 PUT 或 PATCH 请求中,它将被忽略。
  • 如果你把 id 放在 post 中并且它已经被占用了,那么 request 也将被忽略。
  • POST、PUT 或 PATCH 请求应包含 Content-Type: application/json 在请求正文中使用 JSON 的标头。

根据id获取国家

网址:“http://localhost:3000/countries/2”。

我们将使用 post 来测试 POST、PUT 和 DELETE 请求。

让我们将“内容类型”=“应用程序/json”放在下面的标题中。因为所有 POST、PUT 和 DELETE 请求都需要它。

第 4 步:让我们发送带有正文的 post 请求

1
2
3
4
5
6
 
{
      "name": "China",
      "population": "60000"
}
 

URL:“http://localhost:3000/countries/”

让我们再次发送 get 请求来检查我们的 post 请求是否成功。



如您所见,中国现在已添加到国家/地区列表中。

第 5 步:让我们发送带有正文的 put 请求

1
2
3
4
5
6
 
{
      "name": "Nepal",
      "population": "6000"
}
 

URL:“http://localhost:3000/countries/2”

让我们再次发送 get 请求来检查我们的 put 请求是否成功。

如您所见,尼泊尔的人口已更新为 6000。

第六步:发送删除请求
URL:“http://localhost:3000/countries/2”


再次发送get请求,检查删除请求是否成功。

如您所见,从国家/地区列表中删除了 id=2 的国家/地区。

这就是使用 JSON 服务器创建 REST API 的全部内容。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值