赞
赏
Json-Server 的 GET 请求支持 普通查询、 过滤查询、条件查询、分页查询、排序查询、任意切片查询 、全文检索 和 子节点查询。
首先,我们在 E:\workspace
目录,创建一个 db.json
文件,输入以下内容:
{
"JavaScript":[
{
"id": 1,
"category":"ES6",
"author":
{
"name":"HaiCoder5",
"isAdmin":1
},
"website":
{
"name":"嗨客网",
"url":"http://www.haicoder.net"
}
},
{
"id": 2,
"category":"Vue",
"author":
{
"name":"HaiCoder1",
"isAdmin":1
}
}
],
"Server":[
{
"id": 1,
"category":"Docker",
"author":
{
"name":"HaiCoder3",
"isAdmin":1
},
"website":
{
"name":"嗨客网",
"url":"http://www.haicoder.net"
}
},
{
"id": 2,
"category":"Golang",
"author":
{
"name":"HaiCoder2",
"isAdmin":1
},
"website":
{
"name":"嗨客网",
"url":"http://www.haicoder.net"
}
},
{
"id": 3,
"category":"Python",
"author":
{
"name":"HaiCoder2",
"isAdmin":1
}
}
]
}
接着,我们在该目录的地址栏,输入 cmd,打开 cmd 窗口,如下图:
输入 cmd 之后,直接回车,即可在此目录打开命令行,如下图所示:
我们在命令行,输入以下命令,启动 json-server:
json-server --watch db.json
启动成功,如下图所示:
这里所有的测试我们都使用 Postman 来发送 HTTP 请求,更多有关 Postman 的教程,请参考 Postman教程。
GET host:port/key?keyword=value&keyword1.key2=value1
参数 | 描述 |
---|---|
GET | Json-Server 所有的查询都是使用 GET 请求的方式。 |
host | Json-Server 所在的服务器的地址。 |
port | Json-Server 所使用的端口。 |
key | Json-Server 要查询的 key。 |
keyword | 要查询的关键字。 |
value | 关键字的值。 |
过滤条件 | 还可以使用 . 来访问更深层次的属性,key2 是 keyword1 下面的子属性。 |
打开 Postman,在 URL 输入框里面输入 localhost:3000/Server?category=Docker
,请求方法选择 GET
,如下图所示:
点击 Send 按钮,向 Json-Server 发送请求,请求成功后,Json-Server 返回如下图所示:
我们看到,我们查询了 Server 模块下 category 为 Docker 的数据。
打开 Postman,在 URL 输入框里面输入 localhost:3000/Server?category=Golang
,请求方法选择 GET
,如下图所示:
点击 Send 按钮,向 Json-Server 发送请求,请求成功后,Json-Server 返回如下图所示:
我们看到,我们查询了 Server 模块下 category 字段 为 Golang 的所有的信息。
打开 Postman,在 URL 输入框里面输入 localhost:3000/JavaScript?id=1&category=ES6
,请求方法选择 GET
,如下图所示:
点击 Send 按钮,向 Json-Server 发送请求,请求成功后,Json-Server 返回如下图所示:
我们看到,我们查询了 JavaScript 模块下,id 为 1 并且 category 为 ES6 的数据。
打开 Postman,在 URL 输入框里面输入 localhost:3000/Server?author.name=HaiCoder3
,请求方法选择 GET
,如下图所示:
点击 Send 按钮,向 Json-Server 发送请求,请求成功后,Json-Server 返回如下图所示:
我们看到,我们查询了 Server 模块下,author 的 name 属性为 HaiCoder3 的数据。
Json-Server 的 GET 请求支持 普通查询、 过滤查询、条件查询、分页查询、排序查询、任意切片查询 、全文检索 和 子节点查询。 查询 Server 模块下,category 为 Docker 的数据:
GET localhost:3000/Server?category=Docker
查询 Server 模块下,category 为 Golang 的数据:
GET localhost:3000/Server?category=Golang
查询 JavaScript 模块下,id 为 1 并且 category 为 ES6 的数据:
GET localhost:3000/JavaScript?id=1&category=ES6
查询 Server 模块下,author 的 name 属性为 HaiCoder3 的数据:
GET localhost:3000/Server?author.name=HaiCoder3