我正在使用swagger 2.9.2版本,并且我想显示端点 获取,发布,放置,修补,删除。 我提到了这篇文章 Swagger API Operations Ordering 必须与我的要求类似,并且它以升序工作,但我想按上述顺序显示端点。
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors
.basePackage("com.xxx.xxx.controller"))
.paths(PathSelectors.any()).build()
.useDefaultResponseMessages(false)
.apiInfo(metaData());
}
private ApiInfo metaData() {
return new ApiInfoBuilder()
.title("test data")
.description("test data")
.version("1.0.0")
.build();
}
@Bean
UiConfiguration uiConfig() {
return UiConfigurationBuilder
.builder()
.operationsSorter(OperationsSorter.METHOD)
.build();
}
}
答案 0 :(得分:0)
应该起作用的是这样的
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
...
.build()
.operationOrdering(new Ordering<Operation>() {
@Override
public int compare(final Operation left, final Operation right) {
// Here you have all the information about the operations,
// such as left.getMethod(), right.getMethod()
// and you may implement the sorting on your own.
// Return +1, 0 or -1 based on the expected order.
}
});
}
但是,根据您提供的https://stackoverflow.com/a/52760718/2886891链接,仍然可能存在错误:
但是,由于Springfox中的一个错误似乎仍处于活动状态(Operation ordering is not working),因此无法正常工作。