评论

收藏

[JavaScript] #yyds干货盘点# Json Server

开发技术 开发技术 发布于:2021-12-24 22:22 | 阅读数:518 | 评论:0

    有时候需要mock数据,这两天一个大佬给我推荐了这个Json Server,告诉我十分钟就能学会。
    然后进今天花时间看了一下。

一、创建一个文件夹
    首先随便建一个文件夹,然后点进去,在红框里面输入cmd,按Enter,也可以用vscode打开文件夹,在终端进行。
DSC0000.png

二、安装
    然后安装。
npm install json-server
DSC0001.png


三、初始化一个package.json文件
    同样地,也可以在vscode终端运行。
    输入命令生成package.json文件。
npm init --yes
DSC0002.png
DSC0003.png


四、启动JSon Server脚本
    在package.json里面的脚本script这里添加。
"serve":"json-server --watch db.json"
DSC0004.png
    然后再运行命令启动Json server。

npm run serve
    当成功之后,你会发现生成了一个文件,db.json,你后面所有的数据都应该写在这里面。
DSC0005.png
db.json
{
  "posts": [
  {
    "id": 1,
    "title": "json-server",
    "author": "typicode"
  }
  ],
  "comments": [
  {
    "id": 1,
    "body": "some comment",
    "postId": 1
  }
  ],
  "profile": {
  "name": "typicode"
  }
}
DSC0006.png
    以后接口baseURL就是在http://localhost:3000这里了。此时你去访问它,会见到下面这样一个页面。
DSC0007.png
    观察一下db.json文件,整体是一个对象,里面的数据都是对象或者数组格式,引号都要用双引号,而且列表里面的每一个对象都应该有一个id。
    如果在后面加一个路径访问,http://localhost:3000/db,你会得到db.json里面的所有数据。
DSC0008.png
    如果在后面加一个路径访问,http://localhost:3000/posts,你会得到数据。
DSC0009.png


五、访问数据方式
    刚刚上面的访问的方式都是GET请求。也可以用POST、PUT、DELETE等方式进行请求数据。

六、自己设定数据
{
  "posts": [
  {
    "id": 1,
    "title": "他好帅",
    "author": "王一博"
  },
  {
    "id": 2,
    "title": "他好棒",
    "author": "杨洋"
  },
  {
    "id": 3,
    "title": "他好赞",
    "author": "谢允"
  }
  ],
  "comments": [
  {
    "id": 1,
    "body": "some comment",
    "postId": 1
  }
  ],
  "profile": {
  "name": "蓝忘机"
  }
}
  • http://localhost:3000/posts/1

DSC00010.png

  • 带参数
    http://localhost:3000/posts?id=1

DSC00011.png

  • 分页获取数据
    http://localhost:3000/posts?_page=3&_limit=1

DSC00012.png
    _limit每页多少条数据,_page当前是第几页。

  • 排序
    http://localhost:3000/posts?_sort=id&_order=desc
        让id进行降序排列返回。
    DSC00013.png
  • 选择数据
    http://localhost:3000/posts?_start=0&_end=2
        返回前两条数据。
    DSC00014.png
  • 选择满足一定条件的数据
    http://localhost:3000/posts?id_gte=1&id_lte=2
        返回id大于等于1小于等于2的数据。
    DSC00015.png


关注下面的标签,发现更多相似文章