5 回答

TA貢獻1848條經驗 獲得超2個贊
對于OpenAPI3和SpringBoot:
我在控制器的方法上使用了 @Hidden 注釋。
它似乎在方法級別和控制器級別都有效。
@Hidden 注釋是通過以下方式導入的:
import io.swagger.v3.oas.annotations;

TA貢獻1828條經驗 獲得超6個贊
另一種方法是使用@ApiOperation(hidden = true) 這可以在控制器/處理程序級別的方法中使用。例如
@RestController
public HomeController{
@ApiOperation(value = "<Your Message>", hidden = true)
public String getMessage(@RequestParam(value = "msg") final String msg){
return msg;
}
}

TA貢獻1784條經驗 獲得超8個贊
我們只想從類中隱藏特定方法的場景。對于 swagger.v3 有一個名為Hiddenin的注釋io.swagger.core.v3:swagger-annotations:2.0.10 jar。要隱藏的方法可以使用注釋進行Hidden注釋,如下所示。下面的方法顯示了DELETE需要從 swagger 文檔中隱藏的操作方法。
@DELETE
@Hidden
public void deleteList(int id) {
//code goes here.
}

TA貢獻1860條經驗 獲得超9個贊
另一種不同的好方法是在 SpringFox 配置上定義可見路徑
@Configuration
@EnableSwagger2
public class SpringFoxConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(Predicates.or(PathSelectors.ant("/rtm/**"), PathSelectors.ant("/appview/**")))
.build().apiInfo(apiEndPointsInfo());
}
}
通過這種方式,您可以集中定義可見路徑,并避免在許多控制器上放置大張旗鼓的注釋。
添加回答
舉報