swaggerRAP都是优秀的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

results matching ""

    No results matching ""