java – 用于api响应的Swagger doc(类型List)

前端之家收集整理的这篇文章主要介绍了java – 用于api响应的Swagger doc(类型List)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用swagger来生成我的REST API的文档.但是,我在指定某些API调用的响应时遇到问题.

这是我的代码

@GET
@Path("/self/activities")
@Produces(MediaType.APPLICATION_JSON)
@ApiOperation(value = "Get all activities created by this user",notes = "Returns the list that the authenticated user   (JWT) has created",response = Activity.class,responseContainer = "List")
@ApiResponses(value = {
      @ApiResponse(code = 400,response = ErrorResponse.Error.class,responseContainer = "List",message = "There was something wrong in the request and therefore could not be processed (headers,json Syntax/content)"),@ApiResponse(code = 500,message = "Unknown Internal server error")})
public void getActivities(...){...}

这是它生成的文档:

"responses" : {
      "200" : {
        "description" : "successful operation","schema" : {
          "type" : "array","items" : {
            "$ref" : "#/definitions/Activity"
          }
        }
      },"400" : {
        "description" : "There was something wrong in the request and therefore could not be processed (headers,json Syntax/content)","schema" : {
          "$ref" : "#/definitions/Error"
        }
      },"500" : {
        "description" : "Unknown Internal server error","schema" : {
          "$ref" : "#/definitions/Error"
        }
      }
    }

我不明白为什么错误响应不像200响应那样是’Array’类型.我想要的是所有响应的格式与200响应(带项目的数组)相同:

"500" : {
        "description" : "Uknown interval server error","items" : {
            "$ref" : "#/definitions/Error"
          }
        }
      }

谢谢你的时间.

解决方法

@ApiResponse(code = 400,message = "Unknown Internal server error")})

400和500错误响应将返回ErrorResponse.不是数组.

猜你在找的Java相关文章