spring boot和swagger中怎么隐藏请求参数?

swagger2和springboot整合时,controller里面方法的请求参数是一个实体对象,但是生成api文档时不需要实体对象的所有属性作为请求参数。

controller方法如下
@ApiOperation(value = "测试隐藏属性",httpMethod = "GET")
@RequestMapping("/testHidden")
public  String testHidden(@ModelAttribute User user){

    return "success";
}


实体对象属性加了hidden注解但是在接口文档中并没有隐藏,有谁知道怎么解决吗?
@ApiModel
public class User {

    private Long id;
    
    @ApiModelProperty(hidden = true)
    private String name;
    
    private Integer age;
    
    我想隐藏name参数,怎么解决?

clipboard.png

阅读 46.2k
8 个回答
新手上路,请多包涵

使用在controller中,方法的参数列表上加入@ApiIgnore注解,可以直接忽略这个参数在接口文档中显示

新手上路,请多包涵

@ApiParam(hidden = true) 用这个就可以!

新手上路,请多包涵

参数注解里面都 有一个hidder 用来设置是否要隐藏 @ApiModelProperty(value = "用户ID",hidden = true)

新手上路,请多包涵

他们说低版本不支持,有个人升级到2.7.0版本之后,据说行了。

推荐问题