Swagger-默认情况下,Springfox始终会生成一些响应消息(401,403…)。如何删除它们?
问题内容:
我有这样简单的控制器:
@RequestMapping(value="/async/data", method=RequestMethod.GET, produces="application/json")
@ApiOperation(value = "Gets data", notes="Gets data asynchronously")
@ApiResponses(value={@ApiResponse(code=200, message="OK")})
public Callable<List<Data>> getData(){
return ( () -> {return dataService.loadData();} );
}
我原本只希望HTTP状态为200的响应消息。但是springfox始终生成以下消息(401、403、404)。如何禁用(不显示)它们?
async-rest-controller Show/Hide List Operations Expand Operations
GET /async/data Gets data
Implementation Notes
Gets data asynchronously
Response Class (Status 200)
ModelModel Schema
{}
Response Content Type
Response Messages
HTTP Status Code Reason Response Model Headers
401 Unauthorized
403 Forbidden
404 Not Found
问题答案:
您应该能够将插件设置为 不 使用默认响应消息。请遵循以下不同版本的说明。
对于1.0.2或更早版本
new SwaggerSpringMvcPlugin(...)
//More config
.useDefaultResponseMessages(false) //<-- this should be false
...;
对于2.x
new Docket()
//More config
.useDefaultResponseMessages(false) //<-- this should be false
...;