一、快速上手
Apifox Helper
是 Apifox 团队针对 IntelliJ IDEA 环境所推出的插件,可以在 IDEA 环境中识别本地 Java、Kotlin 后端项目的源代码,自动生成 API 文档并一键同步到 Apifox 的项目中。
详情请访问 官网 。
二、项目使用
2.1 设置请求接口所属文件夹
默认情况下, 默认使用 API 所在类作为所属文件夹(即xxxController类上的注释作为文件夹名)。
使用如下:
/**
* 用户相关
*/
@RestController
@RequestMapping(value = "mock")
public class MockCtrl {
/**
* @folder 一级目录/二级目录
*/
@GetMapping("/string")
public String userDetail() {
return Result.success("***");
}
/**
* @folder 用户相关/一级目录/二级目录
*/
@GetMapping("/string")
public String userDetailRoot() {
return Result.success("***");
}
}
默认情况下(无配置)上述接口会归属到文件夹用户相关
, 加上注释 @folder 一级目录/二级目录
后归属到一级目录/二级目录
,如果希望成为用户相关
的子目录,加上注释 @folder 用户相关/一级目录/二级目录
后归属到用户相关/一级目录/二级目录
多级目录使用斜杠/
分隔。其中\
和/
为特殊字符,需要转义,\/
表示字符/
,\\
表示字符\
。
2.2 忽略 API 请求参数
后端可能存在用一个对象作为多个API接口的参数接收,这样就需要对特定的接口忽略特定的请求参数。
使用如下:
/**
* 校验信息
*
* @author fwx
*/
@Data
@Accessors(chain = true)
public class SmsCode implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 是否成功
*/
private boolean success = Boolean.TRUE;
/**
* 手机号
*/
private String phone;
/**
* 主键ID
*/
private String id;
/**
* 验证码
*/
private String value;
}
/**
* 忘记密码
*
* @author fwx
*/
@RestController
@RequestMapping("/api/forgotpw")
public class ForgotPwController {
/**
* 验证手机验证码
* @folder 登录/忘记密码
* @param smsCode 手机号
* @paramIngoreData success
* @return Boolean
*/
@SaIgnore
@PostMapping("/checkPhoneNumber")
public ResponseData checkPhoneNumber(@RequestBody SmsCode smsCode) {
if (!smsService.validateMessage(smsCode)) {
return ResponseData.fail(FlexibleResultCode.FAILURE, "验证码不正确");
}
return ResponseData.data(FlexibleResultCode.SUCCESS);
}
}
上述SmsCode
对象中的success
不作为/api/forgotpw/checkPhoneNumber
接口的请求参数,使用@paramIngoreData success
忽略属性;
使用方式:@paramIngoreData 属性名1 属性名2 属性名3 ...
三、同步接口
支持同步以下范围内的接口:
模块内的全部接口:在左侧目录树的模块节点,点击右键,选择「Upload to Apifox」
Controller 内的全部接口:在 Controller 文件内部,点击右键,选择「Upload to Apifox」
如果是首次同步,需要在弹出的对话框内选择接口的目标同步项目,你可以选择项目或项目内的目录。如果选择项目,则将会上传至项目的根目录。
数据模型无需配置,API 文档将默认上传至接口所在项目的数据模型根目录。