# 5.Easy-Mock平台
# 搭建平台
使用git命令下载github源码:
git clone https://github.com/easy-mock/easy-mock.git
1
手动安装:
手动安装需要配置Mongo与redis,都需要安装到localhost本地
cd easy-mock && npm install
1
运行服务:
$ npm run dev
# Visit http://127.0.0.1:7300
1
2
2
其他命令:
# Build front-end assets
$ npm run build
# Run Easy Mock as production environment (You should run `build` first)
$ npm run start
# Run unit test
$ npm run test
# Test lint
$ npm run lint
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
- Docker方式快速安装
修改config/default.json文件
{
"port": 7300,
"host": "0.0.0.0",
"pageSize": 30,
"proxy": false,
"db": "mongodb://mongo:27017/easy-mock",
"unsplashClientId": "",
"redis": {
"keyPrefix": "[Easy Mock]",
"port": 6379,
"host": "redis",
"password": "",
"db": 0
},
"blackList": {
"projects": [],
"ips": []
},
"rateLimit": {
"max": 1000,
"duration": 1000
},
"jwt": {
"expire": "14 days",
"secret": "shared-secret"
},
"upload": {
"types": [".jpg", ".jpeg", ".png", ".gif", ".json", ".yml", ".yaml"],
"size": 5242880,
"dir": "../public/upload",
"expire": {
"types": [".json", ".yml", ".yaml"],
"day": -1
}
},
"ldap": {
"server": "",
"bindDN": "",
"password": "",
"filter": {
"base": "",
"attributeName": ""
}
},
"fe": {
"copyright": "",
"storageNamespace": "easy-mock_",
"timeout": 25000,
"publicPath": "/dist/"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
本地构建Dockerfile
文件
FROM node:8
WORKDIR /app
COPY . .
RUN npm install --registry=https://registry.npm.taobao.org
EXPOSE 7300
CMD [ "npm", "run", "dev" ]
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
使用docker build -t server:1.0 .
进行镜像的构建。
本地docker-compose.yml文件:
version: '3.1'
services:
node:
image: server:1.0
restart: always
ports:
- 7300:7300
depends_on:
- mongo
- redis
mongo:
image: mongo
restart: always
redis:
image: redis
restart: always
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 平台使用
首先可以参考示例项目进行查看支持的Mock数据类型
官方的平台上提供了清晰的示例文档

Easy Mock 引入了 Mock.js (opens new window),下面只提供部分语法展示。更详尽的用例及文档请参考 Mock.js 官网。
- 支持生成随机的文本、数字、布尔值、日期、邮箱、链接、图片、颜色等
- 支持扩展更多数据类型,支持自定义函数和正则
比如:
{
"string|1-10": "★",
"string2|3": "★★",
"number|+1": 202,
"number2|1-100.1-10": 1,
"boolean|1": true,
"regexp": /[a-z][A-Z][0-9]/,
"absolutePath": "@/string @/user/name",
"user": {
"name": "demo"
},
"object|2": {
"310000": "上海市",
"320000": "江苏省"
},
"array|1": [ "AMD" ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 导入Swagger
easymock提供了非常贴心的swagger导入功能:

形成出来的文档与swagger非常类似,同样提供了Mock数据地址:

# Easymock CLI
官网介绍:https://github.com/easy-mock/easy-mock-cli
安装:
npm install -g easy-mock-cli
1
使用官方的CLI工具快速形成接口请求的js文件:
创建配置文件:
在你的项目根目录下创建一份名为 .easymockrc
的配置文件。
{
"output": "api",
"template": "axios",
"projects": [
{
"id": "你要创建的 Easy Mock 项目的 id",
"name": "demo"
}
]
}
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
以上配置参数的详细介绍在这里 (opens new window)可以找到。
生成 API 文件:
在项目根目录下,执行如下命令将自动生成 API 文件。
easymock init .
1
← 4.POSTMAN 6.Yapi(推荐) →