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的后端服务

results matching ""

    No results matching ""