一:全局安装json-server

npm install json-server -g

二:在自己项目跟目录下存放mock/data.json,json内容如下:

 {
"roles": [
{
"id": 0,
"name": "SuperUser"
},
{
"id": 1,
"name": "User"
},
{
"id": 2,
"name": "Project Manager"
}
],
"users": [
{
"password": "wp123456",
"name": "王芃",
"avatar": "avatars:svg-1",
"email": "wpcfan@163.com",
"id": "37489e0c-df34-c261-71c4-ce75357e3035",
"projectIds": [
"Sk2HaTagb",
"Hya1moGb-"
],
"roleIds": [
0,
1,
2
]
},
{
"password": "Ls123456",
"name": "李四",
"avatar": "avatars:svg-2",
"email": "lisi@163.com",
"id": "BkkDvwee-",
"projectIds": [
"Sk2HaTagb"
],
"roleIds": [
1
]
}
],
"projects": [
{
"id": "Sk2HaTagb",
"name": "问题跟踪系统",
"desc": "用于 Bug 的内部跟踪和管理",
"coverImg": "/assets/img/covers/1.jpg",
"members": [
"37489e0c-df34-c261-71c4-ce75357e3035",
"BkkDvwee-"
]
},
{
"name": "某某公司 ERP 系统",
"desc": "为某某公司开发的定制化 ERP 系统",
"coverImg": "/assets/img/covers/20.jpg",
"members": [
"37489e0c-df34-c261-71c4-ce75357e3035"
],
"id": "Hya1moGb-",
"taskLists": [
"BylTyXiM-b",
"BkWpk7jGZb",
"H1fTyXjMWW"
]
},
{
"name": "新的项目二",
"desc": "大法师",
"coverImg": "/assets/img/covers/5.jpg",
"id": "O2kpMpP"
}
],
"taskLists": [
{
"name": "待办",
"projectId": "Sk2HaTagb",
"order": 1,
"id": "BkenST66lb"
},
{
"name": "已完成",
"projectId": "Sk2HaTagb",
"order": 3,
"id": "SkG3Ba6Tgb"
},
{
"name": "待办",
"projectId": "Hya1moGb-",
"order": 1,
"id": "BylTyXiM-b"
},
{
"name": "进行中",
"projectId": "Hya1moGb-",
"order": 2,
"id": "BkWpk7jGZb"
},
{
"name": "已完成",
"projectId": "Hya1moGb-",
"order": 3,
"id": "H1fTyXjMWW"
}
],
"tasks": [
{
"desc": "吃晚餐",
"taskListId": "BkenST66lb",
"ownerId": "37489e0c-df34-c261-71c4-ce75357e3035",
"completed": true,
"participantIds": [
"BkkDvwee-",
"37489e0c-df34-c261-71c4-ce75357e3035"
],
"dueDate": null,
"reminder": null,
"createDate": "2017-05-17T14:10:01.159Z",
"priority": 3,
"order": 1,
"remark": "",
"id": 1
},
{
"id": 2,
"desc": "赶快出发去万达",
"taskListId": "SkG3Ba6Tgb",
"ownerId": "37489e0c-df34-c261-71c4-ce75357e3035",
"completed": false,
"participantIds": [
"37489e0c-df34-c261-71c4-ce75357e3035"
],
"dueDate": "2017-06-12T16:00:00.000Z",
"reminder": "2017-07-18T16:00:00.000Z",
"createDate": "2017-05-19T10:03:58.794Z",
"priority": 2,
"order": 2,
"remark": "something"
},
{
"id": 3,
"desc": "什么情况啊",
"taskListId": "BkenST66lb",
"ownerId": "BkkDvwee-",
"completed": false,
"participantIds": [],
"dueDate": "2017-06-15T16:00:00.000Z",
"reminder": "2017-06-21T16:00:00.000Z",
"createDate": "2017-05-23T08:21:04.445Z",
"priority": 1,
"remark": ""
},
{
"taskListId": "BylTyXiM-b",
"desc": "登录鉴权过程中需携带 token 访问 API",
"completed": false,
"ownerId": "BkkDvwee-",
"participantIds": [],
"dueDate": "2017-07-03T16:00:00.000Z",
"priority": 2,
"remark": "",
"reminder": "2017-06-27T16:00:00.000Z",
"createDate": "2017-05-24T06:11:05.625Z",
"id": 4
},
{
"taskListId": "BkWpk7jGZb",
"desc": "增加统计报表功能",
"completed": false,
"ownerId": "37489e0c-df34-c261-71c4-ce75357e3035",
"participantIds": [],
"dueDate": "2017-07-25T16:00:00.000Z",
"priority": 1,
"remark": "",
"reminder": "2017-07-17T16:00:00.000Z",
"createDate": "2017-05-24T06:11:48.513Z",
"id": 5
},
{
"taskListId": "BylTyXiM-b",
"desc": "首页 banner 增加 2px 的 margin",
"completed": false,
"ownerId": "37489e0c-df34-c261-71c4-ce75357e3035",
"participantIds": [
"BkkDvwee-"
],
"dueDate": "2017-06-29T16:00:00.000Z",
"priority": 3,
"remark": "",
"reminder": null,
"createDate": "2017-05-24T06:12:59.718Z",
"id": 6
},
{
"taskListId": "BkWpk7jGZb",
"desc": "库存管理 -- 出库操作 API",
"completed": false,
"ownerId": "BkkDvwee-",
"participantIds": [
"37489e0c-df34-c261-71c4-ce75357e3035"
],
"dueDate": "2017-07-24T16:00:00.000Z",
"priority": 2,
"remark": "",
"reminder": "2017-07-17T16:00:00.000Z",
"createDate": "2017-05-24T06:14:47.575Z",
"id": 7
},
{
"taskListId": "H1fTyXjMWW",
"desc": "用户可以签入签出设备",
"completed": true,
"ownerId": "37489e0c-df34-c261-71c4-ce75357e3035",
"participantIds": [],
"dueDate": "2017-05-20T16:00:00.000Z",
"priority": 1,
"remark": "",
"reminder": "2017-05-20T16:00:00.000Z",
"createDate": "2017-05-24T06:16:24.575Z",
"id": 8
},
{
"taskListId": "BkWpk7jGZb",
"desc": "什么情况啊?",
"completed": false,
"ownerId": "37489e0c-df34-c261-71c4-ce75357e3035",
"participantIds": [],
"dueDate": null,
"priority": 3,
"remark": "",
"reminder": null,
"createDate": "2017-06-15T12:03:36.290Z",
"id": 9
}
],
"quotes": [
{
"id": "0",
"cn": "我突然就觉得自己像个华丽的木偶,演尽了所有的悲欢离合,可是背上总是有无数闪亮的银色丝线,操纵我哪怕一举手一投足。",
"en": "I suddenly feel myself like a doll,acting all kinds of joys and sorrows.There are lots of shining silvery thread on my back,controlling all my action.",
"pic": "/assets/img/quotes/0.jpg"
},
{
"id": "1",
"cn": "被击垮通常只是暂时的,但如果你放弃的话,就会使它成为永恒。(Marilyn vos Savant)",
"en": "Being defeated is often a temporary condition. Giving up is what makes it permanent.",
"pic": "/assets/img/quotes/1.jpg"
},
{
"id": "2",
"cn": "不要只因一次挫败,就放弃你原来决心想达到的梦想。(莎士比亚)",
"en": "Do not, for one repulse, forgo the purpose that you resolved to effect.",
"pic": "/assets/img/quotes/2.jpg"
},
{
"id": "3",
"cn": "想有发现就要实验,这项实验需要时间。—《神盾局特工》",
"en": "Discovery requires experimentation, and this experiment will take time.",
"pic": "/assets/img/quotes/3.jpg"
},
{
"id": "4",
"cn": "这世界并不会在意你的自尊,这世界希望你在自我感觉良好之前先要有所成就。",
"en": "The world won't care about your self-esteem. The world will expect you to accomplish something before you feel good about yourself.",
"pic": "/assets/img/quotes/4.jpg"
},
{
"id": "5",
"cn": "当你最终放开了过去,更好的事就会到来。",
"en": "When you finally let go of the past, something better comes along.",
"pic": "/assets/img/quotes/5.jpg"
},
{
"id": "6",
"cn": "我们学着放开过去伤害我们的人和事,学着只向前看。因为生活本来就是一往直前的。",
"en": "We learn to let go of things and people that hurt us in the past and just move on. For life is all about moving on.",
"pic": "/assets/img/quotes/6.jpg"
},
{
"id": "7",
"cn": "绝不要因为怕辛苦而拒绝一个想法、梦想或是目标,成功的路上难免伴随辛苦。(Bob Proctor)",
"en": "Never reject an idea, dream or goal because it will be hard work. Success rarely comes without it.",
"pic": "/assets/img/quotes/7.jpg"
},
{
"id": "8",
"cn": "我们在人生中会作出许多选择,带着这些选择继续生活,才是人生中最难的一课。《妙笔生花》",
"en": "We all make our choices in life. The hard thing to do is live with them.",
"pic": "/assets/img/quotes/8.jpg"
},
{
"id": "9",
"cn": "我总是对新的一天充满喜悦,这是一次新的尝试、一个新的开始,翘首以待,黎明之后或是惊喜。(约翰·博因顿·普里斯特利)",
"en": "I have always been delighted at the prospect of a new day, a fresh try, one more start, with perhaps a bit of magic waiting somewhere behind the morning.",
"pic": "/assets/img/quotes/9.jpg"
}
]
}

三:执行 “json-server mock/data.json” 显示如下效果

访问http://localhost:3000/此地址,就会访问到每个接口返回的数据

四:json-server支持GET,POST,PUT,PATCH,DELETE等REST命令

快速搭建REST API——json server的更多相关文章

  1. 玩转 SpringBoot 2 快速搭建 | RESTful Api 篇

    概述 RESTful 是一种架构风格,任何符合 RESTful 风格的架构,我们都可以称之为 RESTful 架构.我们常说的 RESTful Api 是符合 RESTful 原则和约束的 HTTP ...

  2. 拿nodejs快速搭建简单Oauth认证和restful API server攻略

    拿nodejs快速搭建简单Oauth认证和restful API server攻略:http://blog.csdn.net/zhaoweitco/article/details/21708955 最 ...

  3. json server的简单使用(附:使用nodejs快速搭建本地服务器)

    作为前端开发人员,经常需要模拟后台数据,我们称之为mock.通常的方式为自己搭建一个服务器,返回我们想要的数据.json server 作为工具,因为它足够简单,写少量数据,即可使用. 安装 首先需要 ...

  4. Python+Flask搭建mock api server

    Python+Flask搭建mock api server 前言: 近期由于工作需要,需要一个Mock Server调用接口直接返回API结果: 假如可以先通过接口文档的定义,自己模拟出服务器返回结果 ...

  5. 在Ubuntu上快速搭建基于Beego的RESTful API

    最近在研究Go,打算基于Go做点Web API,于是经过初步调研,打算用Beego这个框架,然后再结合其中提供的ORM以及Swagger的集成,可以快速搭建一个RESTful API的网站. 下面是具 ...

  6. Cucumber+Rest Assured快速搭建api自动化测试平台

    转载:http://www.jianshu.com/p/6249f9a9e9c4 什么是Cucumber?什么是BDD?这里不细讲,不懂的直接查看官方:https://cucumber.io/ 什么是 ...

  7. WAMP Server助你在Windows上快速搭建PHP集成环境

    WAMP Server助你在Windows上快速搭建PHP集成环境 原文地址 我想只要爬过几天网的同学都会知道PHP吧,异次元的新版本就是基于PHP的WordPress程序制造出来的,还有国内绝大部分 ...

  8. json:server 本地搭建

    做个记录, 第一步,我们新建一个文件夹. 第二步,打开文件夹,执行git,没有git可以下载一个.或者用命令行工具进入到这个文件夹! 第三步,初始化json  在git里执行npm init --ye ...

  9. 快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana)

    快速搭建应用服务日志收集系统(Filebeat + ElasticSearch + kibana) 概要说明 需求场景,系统环境是CentOS,多个应用部署在多台服务器上,平时查看应用日志及排查问题十 ...

随机推荐

  1. 洛谷 P2355 团体操队形

    P2355 团体操队形 题目背景 X中学要团体操比赛了哦.队形该怎样排呢? 题目描述 有n(n<=100000)个团体操队员编号分别为1~n,参加运动会开幕式的团体操表演.其基本队形(分连续队形 ...

  2. JAVA 并发编程-线程范围内共享变量(五)

    线程范围内共享变量要实现的效果为: 多个对象间共享同一线程内的变量 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsi ...

  3. 使用 Facebook开源动画库 POP 实现真实衰减动画

    1. POP动画基于底层刷新原理.是基于CADisplayLink,1秒钟运行60秒,接近于游戏开发引擎 @interface ViewController () @property (nonatom ...

  4. Impala与HBase整合

    不多说,直接上干货! Impala可以通过Hive外部表方式和HBase进行整合,步骤如下: • 步骤1:创建hbase 表,向表中添加数据 create 'test_info', 'info' pu ...

  5. Android 通过OnScrollListener来监听RecyclerView的位置

    最近做一个漫画app,在阅读漫画界面需要通过获取recyclerView的位置来实时更新界面上的图片进度(比如1/9), 查阅资料得知了可以通过LayoutManager来获取recyclerView ...

  6. PHP表单生成器,快速生成现代化的form表单,快速上手

    form-builder PHP表单生成器,快速生成现代化的form表单.包含复选框.单选框.输入框.下拉选择框等元素以及省市区三级联动.时间选择.日期选择.颜色选择.树型.文件/图片上传等功能. 详 ...

  7. mv---移动文件或目录

    mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中.source表示源文件或目录,target表示目标文件或目录.如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆 ...

  8. 怎样扩展Chromium各层的接口

    加入新功能时,可能须要添加各层的接口,接口怎样加?必定须要向Chromium的原则看齐. 首先Chromium的模块设计遵循依赖倒置原则,上层模块依赖于低层模块.低层模块不会依赖上层模块的实现. 再者 ...

  9. 从”茄子快传”看应用程序怎样获取手机已安装程序的apk文件

    "茄子快传"是联想开发的一款近距离文件共享软件.它通过wifi-direct(速度飞快,不须要联网)或者普通的网络(速度慢)在不同手机间传递文件. 不知为何.它就火了起来,火的也飞 ...

  10. Problem C: Celebrity Split

    题目描写叙述 Problem C: Celebrity Split Jack and Jill have decided to separate and divide their property e ...