ulr*_*ich 19 java jax-rs swagger swagger-ui
我找不到任何有用的例子,如何实现以下内容:我希望我的Swagger-UI中的API方法按方法(GET-POST-PUT-DELETE)或/按字母顺序排序.
到目前为止,所有方法都以随机顺序显示,甚至不按给定源代码的顺序显示.
我使用Jax-RS + Jersey 1.
使用@ApiOperation的position属性进行排序对我来说不是一个选项,因为有太多的方法而且API仍在扩展,所以如果有一个新的,我需要更新所有.
任何提示?
Ant*_*ace 16
更新扬鞭UI 2.1.0+:该sorter参数已被分成两个参数,如指出的修复1040,修复1280:
apisSorter
对API /标签列表应用排序.它可以是'alpha'(按名称排序)或函数(请参阅Array.prototype.sort()以了解sort函数的工作原理).默认值是服务器返回的顺序不变.
operationsSorter
将排序应用于每个API的操作列表.它可以是'alpha'(按字母数字路径排序),'method'(按HTTP方法排序)或函数(请参阅Array.prototype.sort()以了解sort函数的工作原理).默认值是服务器返回的顺序不变.
因此,您需要更新sorter以apisSorter按字母顺序对API列表进行排序,和/或operationsSorter对每个API的操作列表进行排序.宠物店演示已更新为apisSorter,如下所示:
window.swaggerUi = new SwaggerUi({
...
apisSorter : "alpha"
});
Run Code Online (Sandbox Code Playgroud)
对于早于2.1.0的Swagger UI版本:
该sorter参数仍然与旧版本的Swagger UI相关:
您可以使用分拣机实例SwaggerUi时参数.这发生在Swagger-Ui index.html上的javascript中.从文档:
排序器将排序应用于API列表.它可以是' alpha '(按字母数字排序路径)或' method '(通过HTTP方法排序操作).默认值是服务器返回的顺序不变.
示例:
window.swaggerUi = new SwaggerUi({
...
sorter : "alpha"
});
Run Code Online (Sandbox Code Playgroud)
小智 9
// I had the same issue and i fixed like this
window.swaggerUi = new SwaggerUi({
apisSorter: "alpha",
operationsSorter: function (a, b) {
var order = { 'get': '0', 'post': '1', 'put': '2', 'delete': '3' };
return order[a.method].localeCompare(order[b.method]);
},
});
Run Code Online (Sandbox Code Playgroud)
接受的答案有点过时了.在较新的版本中,它通过以下方式完成:
window.swaggerUi = new SwaggerUi({
...
apisSorter: "alpha", // can also be a function
operationsSorter : "method", // can also be 'alpha' or a function
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22264 次 |
| 最近记录: |