Swagger允許我們通過Docket的globalResponseMessage()方法全局覆蓋HTTP方法的響應消息,但是首先我們得通過Docket的useDefaultResponseMessages方法告訴Swagger不使用默認的HTTP響應消息,假設我們現在需要覆蓋所有GET方法的500和403錯誤的響應消息,我們只需要在SwaggerConfig.java類中的Docket Bean下添加如下內容:
.useDefaultResponseMessages(false)
.globalResponseMessage(RequestMethod.GET, newArrayList(
new ResponseMessageBuilder()
.code(500)
.message("服務器發生異常")
.responseModel(new ModelRef("Error"))
.build(),
new ResponseMessageBuilder()
.code(403)
.message("資源不可用")
.build()
));
在SwaggerUI頁面展示的所有GET類型請求的403以及500錯誤的響應消息都變成了我們自定義的內容。