本项目是以XXL-APIv1为基础进行二次开发的原始项目地址:https://githucom/xuxueli/xxl-api
在原功能基础之上增加了:
独立DEV环境的接口根地址默认添加guest账号,以支持访客模式访问(只可以运行接口测试,添加mock数据),用于给业务端,客服人员使用增加API请求参数备注,响应结果参数备注,依赖资源属性增加API修改历史的记录,显示创建人,最后修改人增加mockurl适配,可以通过/mock/run/{APIURL}来这直接访问对应API的默认mock数据,方便前端的团队进行mock测试统一配置增加对于Apollo配置中心的接入支持增加API自动生成wiki文档的支持AtlassianConfluence,并可以通过改resources/templates/wiki/apwikitemplatftl来调整生成格式
功能使用说明
创建业务线API的体系是:业务线/项目/分组/接口
创建项目
根地址就是API的host,分为:线上、预发布、测试、开发,可以根据不同的情况填写
后面在接口测试时,实际会使用对应环境的{host}+{apiurl}发起请求
点击进入项目,进行该项目的接口管理
创建分组
接口支持分组,如果不选择则会使用默认分组,建议按照'业务领域'划分接口,进行接口的维护,管理
创建接口
接口基本信息
如果开启了自动wiki同步功能ors.apiadmienableSyncWiki=1
则接受指定父级wiki地址或当前API对应的wiki地址
指定API对应的wiki地址优先于父级wiki地址被使用。
另外要注意的是,确保ors.apiadmiwikiuser配置的wiki用户有权限操作指定的wiki空间
接口测试
添加完接口后可以通过“接口详情页”的按钮接入接口测试界面
这里要特别说明2点:
如果当前接口是通过requestparameter就接受参数的,要将默认使用requestbody这个选项取消,如果是直接body重的JSON内容这种的就要勾选中公司内部接口一般都有鉴权,所以会有自动获取测试token的选项,勾选它代表,这个请求需要执行鉴权,在XxlApiTestController的
预留了登录访问接口的方法,这部分逻辑需要自行实现
/**
* 实现网关登录调用 公司自己有接口网关需要登录时使用
* @param remoteRequest
* @param request
* @return
*/
private String remoteCallWtihLogin(HttpRequestBase remoteRequest,HttpServletRequest request,Map queryParamMap) {
String responseContent = null;
//TODO 实现接口网关登录逻辑
responseContent = remoteCall( remoteRequest );
return responseContent;
}
添加mock
同样是通过'接口详情页'的按钮添加mock数据
创建的第一条mock数据,会作为该接口的默认mock数据,可以通过http://{apiadmin-host}/api-admin/mock/run/{apiurl}直接访问
apiadmin-host为当前接口管理系统的访问host
这样可以便于前端代码在调试统一动态配置获取对应的接口的mock数据
如果有多条mock数据,可以通过点击对应mock数据的“设为默认”链接来设置接口mock数据的默认值
想要访问某个特定的mock状态数据,只需要访问点击'运行'打开的URL即可。
文章为作者独立观点,不代表观点