swagger
与RAP
都是优秀的mock
工具。
swagger
是通过进行配置json/yml
生成restful api
甚至sdk
及文档,一定的上手有难度,并且生成的sdk
的使用更加复杂。
RAP
则是通过ui界面进行接口编辑,本身就是一个服务,直接可进行请求,其本质上就是另外一套开发数据。和公司现有技术方法更加匹配,因此选择为RAP
。首先,我们要把
RAP
实现本地化。部署文档可参考:https://github.com/thx/RAP
账号
访问到主页,可以在右上角进行登录与注册。 需要说明的是,账号注册没有任何限制,只要注册完成即可登录进去查看公开的团队项目。
项目组织
RAP
的项目组织结构是:
团队 -> 产品线 -> 小组 -> 项目 -> 接口文档工作区
也就是说如果要进行具体的接口文档工作,用户必须处于上述的结构中。
团队
大公司可能有多个团队,但是规模比较小点的公司,只创建一个团队就足够了。
需要注意的是:创建团队时候,可以选择该团队是否可全员可见。建议团队设置为“仅团队成员可见”,这样万一其他用户登录进来,没有加入团队时,也无法接触到该项目。
创建团队的用户默认为超级管理员(针对该团队)
创建时,可把对应的成员加入团队,也可由超级管理员在团队管理中添加用户并进行相对应的权限赋予。此处创建团队team
。
产品线
产品线对应的是一个技术团队的不同产品线。
建议创建产品线也有超管创建。此处创建产品线gm
。
分组
其实就是产品线先关者的进一步细分。此处创建小组front
。
项目
在小组内点击+
进行创建项目wx
,然后进入项目内,即接口页面。
接口
接口内容做变动时,需点击先点击“编辑”,然后该项目就会进入锁定状态,其他人此时无法更改内容直至锁定状态结束。
模块
模块可根据业务进行划分,比如用户模块/系统,产品/系统等等.
此处已默认有一个空内容的模块,我们可以在编辑区的右上侧双击进行修改。此处先把模块名字命名为“用户”。
当然,我们可以在编辑区的右上角新增模块。
页面
页面可对应具体的客户端页面,在侧边栏进行某页面进行编辑,改为“个人中心”。
请求
侧边栏,执行编辑某请求:
增加参数
因为mock
数据,所以主要参数设置则为相应参数,备注中@mock可设置改参数的相应默认字段
。此处我设置如下:
然后执行秒存。此时点击Mock数据
即可预览。
秒存是全部保存。 慢存则是只进行备注更改。
请求
点击mock数据
可以看到该请求的url。我们只需要把http://127.0.0.1:8080
换成该服务域名即可在postman
进行模拟。
mock规则
mock
规则是参考https://github.com/nuysoft/Mock/wiki/Getting-Started
。
属性
每个属性都有两部分分构成:属性名,生成规则
name|rule:value
'list|1-10:array' -> 表示list是一个数组,长度为1-10个
'name|3:string' -> 表示name的值重复3个
'name|1-4:number' -> 表示值大于0小鱼5
'number1|1-100.2-10:1' -> 表示生成一个浮点数,整数部分大于1小鱼100,小数位保留2-10位。
'name|1-4:true' -> 生成一个布尔值,
true
的概率为1 / (1+4)
,false
的概率为4/(1+4)
。当规则1
的时候,概率都为1/2
。name|1-4:object
-> 从object
中随机选去1-4
个属性。
值
用@
来标识其后的字符串是字符串。并且可以引用属性名称。常用的有:
@mock=@ID
生成随机字符串数字用来做id@mock=[3, 5, 8]
随机从数组中拿出数字@mock=@url
随机生成url@mock=@integer(1,10)
生成大于0小于11的整数@mock=["@URL"]
数组中值为url@mock=@DATE
生成yyyy-mm-dd
日期字符串@mock=DATETIME
生成yyyy-mm-dd hh:mm:ss
日期字符串@mock=@COLOR
生成颜色值@mock=png,jpg,gig
从中选择一个坐位属性值@mock=@AD_SIZE
生成300*200
图片格式@mock=@WORD
生成连续字符串@mock=@EMAIL
随机生成email@mock=@IMG
随机生成图片@mock=@IMG(200*200)
随机生成200*200图片@mock=@TIME
随机生成HH:MM:SS
时间字符串
具体可参考:http://rapapi.org/workspace/myWorkspace.do?projectId=2348#13802