小编Iña*_*aki的帖子

如何在Springfox Swagger中删除操作的响应主体?

我正在使用 spring-boot 制作的 REST 服务工作,迄今为止,该服务已使用 springfox-swagger2:2.7.0 (首先实现)进行记录。我添加的最后一个操作如下所示:

@ApiOperation(value = "whatever")
  @ApiResponses({
    @ApiResponse(code = HttpURLConnection.HTTP_NO_CONTENT, message = "Returns empty content when succeeds"),
    @ApiResponse(code = HttpURLConnection.HTTP_FORBIDDEN, message = "You can't do that.")
  })
@CrossOrigin
@PreAuthorize("hasAuthority('USER_ACCESS')")
@RequestMapping(value = "/foo", method = POST, consumes = APPLICATION_JSON_VALUE)
@ResponseStatus(HttpStatus.NO_CONTENT)
public ResponseEntity postFoo(
  @RequestBody
  FooRequestBody requestBody) {

  if (someMethodReturnsTrue()) {
    return ResponseEntity.status(HttpStatus.NO_CONTENT).build();
  } else {
    return ResponseEntity.status(HttpStatus.UNAUTHORIZED).build();
  }
}
Run Code Online (Sandbox Code Playgroud)

现在的问题是,无论如何,生成的 Swagger 定义最终看起来像这样:

"responses": {
  "204": {
    "description": "Returns empty content when succeeds",
    "schema": {
      "$ref": "#/definitions/ResponseEntity"
    } …
Run Code Online (Sandbox Code Playgroud)

java spring-mvc swagger-2.0 springfox openapi

5
推荐指数
2
解决办法
9010
查看次数

标签 统计

java ×1

openapi ×1

spring-mvc ×1

springfox ×1

swagger-2.0 ×1