Moco一个模拟后端接口的框架,简单易用,基于json的编写,前端后端并行开发的时候,为了不影响前端开发可以提前编写一套Moco接口供前端使用,关于Moco介绍以及使用的文章很多,但如今用工作中用到了还是想分享一下。
本文目录:
- Moco的下载以及安装及demo演示
- Moco的运用案例及常用标签
- Moco的分模块编写
1、Moco下载及安装及demo演示
进入Moco的github项目地址:https://github.com/dreamhead/moco 下载 moco-runner-0.12.0-standalone.jar ,
然后在Mock目录下创建项目文件夹如:test测试,在test文件夹下创建test.json文件,编写test.json文件
如下:
[
{
"description":"这是我们的第一个mock例子",
"request":{
"uri":"/demo"
},
"response":{
"text":"第一个moco框架demo"
}
}
]
启动Moco:
java -jar moco-runner-0.11.0-standalone.jar http -p 8002 -c order/order.json
-p是服务启动端口,-c是项目的json配置文件
启动成功。
就可以访问,使用PostMan访问localhost:8002/demo 即可返回 “第一个moco框架demo”。
2、Moco的运用案例及常用标签
[
{
"description":"获取人员列表",
"request":{
"uri":"/person/list",
"method":"post",
"headers":{
"token":"123456"
},
"cookies":{
"sessionId":"1234565"
},
"json":{
"name":"123",
"param":"3445"
}
},
"response":{
"status":200,
"json":{
"item":[
{
"name":"success",
"status":"1"
},{
"name":"success",
"status":"1"
},{
"name":"success",
"status":"1"
}
],
"total":1203,
"pageSize":5,
"current":2
}
}
},
{
"description":"获取人员列表2",
"request":{
"uri":"/person/list2",
"method":"get",
"headers":{
"token":"123456"
},
"cookies":{
"sessionId":"1234565"
},
"queries":{
"name":"张三",
"age":18
}
},
"response":{
"status":200,
"json":{
"item":[
{
"name":"success",
"status":"1"
},{
"name":"success",
"status":"1"
},{
"name":"success",
"status":"1"
}
],
"total":1203,
"pageSize":5,
"current":2
}
}
},
{
"description":"添加人员",
"request":{
"uri":"/person/list",
"method":"get",
"headers":{
"token":"123456"
},
"cookies":{
"sessionId":"1234565"
},
"forms":{
"name":"张三",
"age":20
}
},
"response":{
"status":200,
"json":{
"id":"10001"
}
}
},
{
"description":"302服务端转发",
"request":{
"uri":"/person/redirect",
"method":"get"
},
"redirectTo":"http:www.baidu.com",
"response":{
"status":200
}
}
}
]
1、第一个案例是获取人员列表:
post提交,传参以json对象的形式到服务端,获取到结构是json对象。
2、第二个案例获取人员列表:
get提交,queries中的参数是查询参数,获取到结构是json对象。
3、第三个案例是添加人员信息到服务器:
post提交,forms中的参数代表表单提交,获取到人员的id。
常用标签:
request:请求对象
headers:请求头
cookies:cookie对象
url:路由
method:请求方法
queries:查询参数
json:请求对象参数
response:响应对象
status:响应码
json:返回数据
redirectTo:服务端转发
description:接口描述
3、Moco的分模块编写
Moco分模块编写,这在我们开发中是很有用的,划分模块是解耦项目提高项目质量的关键,进接上面的配置,
添加分模块配置:project.json
[
{
"context":"/person", //人员列表
"include":"test/test.json"
}
]
在Moco目录下创建project.json项目配置文件,把刚才的test.json引入作为test模块,数组对象可以配置多个。
context:模块的路由
include:把模块的json配置文件引入(相对目录)
启动: java -jar moco-runner-0.11.0-standalone.jar http -p 8002 -g project.json
。
谢谢观赏!!!