当前位置: 首页 > 面试题库 >

Swagger-UI中的排序API方法

孟花蜂
2023-03-14
问题内容

我找不到任何有效的示例,说明如何实现以下目标:我希望Swagger-UI中的API方法按方法(GET-POST-PUT-DELETE)或/和字母顺序排序。

到目前为止,所有方法都以随机顺序显示,甚至没有按照我的源代码给出的顺序显示。

我使用Jax-RS + Jersey 1。

对我来说,使用@ApiOperation的position属性进行排序不是一种选择,因为方法太多,而且API仍在扩展,因此如果有一个新方法,我将需要全部更新。

有什么提示吗?


问题答案:

Swagger UI 2.1.0+的更新:sorter参数已分为两个参数,如Fix
1040
,Fix
1280中所述

apisSorter

对API /标签列表进行排序。它可以是“
alpha”(按名称排序)或一个函数(请参阅Array.prototype.sort()了解排序函数的工作原理)。默认为服务器返回的顺序不变。

操作员

对每个API的操作列表进行排序。它可以是“ alpha”(按字母数字顺序按路径排序),“
method”(按HTTP方法排序)或一个函数(请参阅Array.prototype.sort()了解排序函数的工作原理)。默认为服务器返回的顺序不变。

因此,您需要更新sorterapisSorter按字母顺序对API列表进行排序,和/或operationsSorter对每个API的操作列表进行排序。宠物店演示已更新为apisSorter,如下所示:

示例:(工作演示,按字母顺序排序)

window.swaggerUi = new SwaggerUi({

...

apisSorter : "alpha"
});

对于早于2.1.0的Swagger UI版本

sorter参数仍然与旧版本的Swagger UI相关:

您可以使用 分拣机 实例SwaggerUi时参数。这发生在Swagger-Ui
index.html上的javascript中。从文档中:

分类器对API列表进行排序。它可以是“ alpha ”(按字母数字顺序对路径进行排序)或“ method
”(通过HTTP方法进行排序操作)。默认值为服务器返回的顺序不变。

范例:

window.swaggerUi = new SwaggerUi({

...

sorter : "alpha"
});


 类似资料:
  • 我想知道以下是否可行。 Swagger几乎是我记录基于消息的API所需要的。例如,对于命令消息,我想说“命令”而不是“发布”,而不是“路径”,我想知道命令的名称。 规范提到可以使用“x”属性进行供应商扩展,但我1)没有找到任何示例来说明如何做到这一点,2)不确定使用这些属性是否有助于我实现目标。 有人能给我指出一些可以帮助我前进的资源吗?

  • 我想将为实体类生成的排序到中的类 我能够通过文件中的以下配置对和进行排序,但我的架构没有按排序顺序排序。 我如何排序我的模式。 谢谢。

  • 问题内容: 我有使用Java的JAX-RS / Jersey开发的REST API。我想为其转换/生成基于Swagger的UI文档。有人可以简单的方式告诉我精确的步骤吗?很抱歉,他们网站上的步骤对我来说并不清楚。 问题答案: 有几种方法可以将swagger-core与您的应用程序集成,但是根据您的描述,我将按照https://github.com/swagger- api/swagger-core

  • 我的实际情况是,我允许在实现自定义参数绑定的API控制器上使用参数绑定进行依赖注入。 例如,控制器动作可能如下所示: 当我使用Swashbuckle生成的Swagger UI探索我的API时,< code>customerFacade被指定为一个实际的和必需的资源动作参数。 您知道从生成的 Swagger UI 中排除控制器操作参数的任何方法吗? 注意:我知道解决方法可以使用构造函数注入注入依赖项

  • Swagger UI是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。   demo参见:http://petstore.swagger.wordnik.com/#!/pet

  • 我有一个Spring Boot应用程序,其中API被指定为OpenAPI 3.0.2 YAML文档。我使用openapi生成器maven插件从规范生成代码http://localhost:8080/swagger-用户界面。html,它显示:“规范中未定义任何操作!” 在规范中,我有: 这导致控制器类中出现以下情况: 如果我加载openapi定义。编辑亚马尔。大摇大摆io,它显示了预期的定义。 如