Swagger 中的 @ApiOperation 与 @ApiResponse

Vir*_*rat 8 swagger spring-boot swagger-2.0

@ApiOperation有一个属性response,我们可以将响应类型传递给它。在@ApiResponse我们也有一个属性response,这是我们可以通过响应类型。那么它们之间的确切区别是什么?

gag*_*nbm 6

您必须在 中指定成功响应,@ApiOperation而您可以在 中指定所有可能的响应对象@ApiResponse

@ApiResponse用于包裹在里面@ApiResponses,通常用于指定错误代码和异常情况,例如Resource Not FoundBad Request等。您也可以指定success响应,但不是强制性的,因为成功响应在@ApiOperation.

  • 如果您的 API 在成功的情况下返回任何响应实体,则必须在 @apiOperation 中将其称为 `response=`。如果不指定,虽然不会有什么不好的事情发生,但 swagger 将无法显示响应结构。但这就是使用 swagger 的全部意义:记录 API。 (3认同)

pvp*_*ran 0

@ApiOperation和的用法@ApiResponse有点不同。通过 @ApiOperation,您可以使用 指定 REST 方法的返回类型response。使用@ApiResponse,您可以发回其他信息,例如 HTTP 代码、用户定义的消息和其他标头(如果您想返回)