json server
json server
你暂时没有能力开发一个服务端应用,但又希望测试你的增删改功能,除了使用本地存储外,还可以使用一些工具来模拟一个后端,称之为mock
json-server https://github.com/typicode/json-server 是一个npm包,安装后会在本地运行一个Web网站服务。你只需要在该网站的根目录下放置一个json文件,然后你的前端应用就可以按照约定的url去存取这个json文件,仿佛是一个全功能的后端
参考 https://www.cnblogs.com/fly_dragon/p/9150732.html
使用
安装
npm install -g json-server
创建一个data.json文件
{"posts": [
{
"id": 1,
"title": "博文一",
"content": "这里是博文一的内容",
"author": "张三"
},{
"id": 2,
"title": "博文二",
"content": "这里是博文二的内容",
"author": "张三"
}]}
在data.json所在的目录下,启动json-server
// windows下不支持watch参数
json-server --watch --port 8089 data.json
打开浏览器访问 http://127.0.0.1:8089/posts ,如果看到博文列表数据,则成功
路由
获取所有的博文信息
GET /posts
获取id=1的课程信息
GET /posts/1
新增博文
POST /posts
更新博文1
PUT /posts/1
PATCH /posts/1
删除博文1
DELETE /posts/1
对于新增和更新操作,请将博文数据置于表单各字段中,json-server将保存至data.json文件中,请注意查看
高级路由
支持字段查询、全文搜索
GET /posts?title=博文一&author=张三
GET /posts?id=1&id=2
GET /posts?q=internet
支持查询谓词,如`_gte, _lte, _ne, _like`
GET /products?price_gte=10&price_lte=80
GET /posts?views_gte=10&views_lte=20
支持排序、分页
GET /products?_sort=price&_order=asc
GET /posts?_page=7&_limit=20
GET /posts?_start=20&_end=30&_limit=10
甚至关联查询
GET /comments?author.name=张三
其它mock
https://mockend.com/ 提供类似json server的接口服务,但提供了公网上的部署环境。它与github集成,只需将data.json按放置在github的库根目录下即可获得类似json-server的后端服务