相关疑难解决方法(0)

Swagger springfox在POST上隐藏模型属性

想知道如何在POST上隐藏Swagger中的模型属性.我试过Swagger-springmvc(0.9.3)和Springfox(支持swagger规范2.0)无济于事.

问题是我希望通过Swagger在GET请求中看到这一点.但不是POST请求,因为id是自动分配的,我想隐藏它只是为了POST请求.

public class RestModel {
   private int id;
   @JsonProperty
   private String name;

   @JsonProperty
   public int getId() {
       return 0;
   }

   @JsonIgnore
   public void setId(int customerId) {
       this.customerId = customerId;
   }

   public int getName() {
       return "abc";
   }

   public void setName(String name) {
       this.name = name;
   }
}
Run Code Online (Sandbox Code Playgroud)

所以在GET上,我应该看到:

{
  "id": 0,
  "name" : "abc"
}
Run Code Online (Sandbox Code Playgroud)

在POST上,我应该看到:

{
   "name"
}
Run Code Online (Sandbox Code Playgroud)

尝试添加:@ApiModelProperty(readonly = true).但这没有帮助.

swagger swagger-ui

11
推荐指数
1
解决办法
3761
查看次数

标签 统计

swagger ×1

swagger-ui ×1