example acceder java jax-rs swagger swagger-ui

acceder - swagger java



Ordenar los métodos API en Swagger-UI (3)

La respuesta aceptada es un poco anticuada. En las versiones más recientes se hace por:

window.swaggerUi = new SwaggerUi({ ... apisSorter: "alpha", // can also be a function operationsSorter : "method", // can also be ''alpha'' or a function });

No puedo encontrar ningún ejemplo práctico, cómo lograr lo siguiente: Quiero que mis métodos API en la Swagger-UI estén ordenados por métodos (GET-POST-PUT-DELETE) O / Y alfabéticamente.

Hasta ahora, todos los métodos se muestran en un orden aleatorio, incluso en el orden en que no se indica mi código fuente.

Yo uso Jax-RS + Jersey 1.

La clasificación mediante el atributo de posición de @ApiOperation no es una opción para mí, ya que hay demasiados métodos y la API aún se está extendiendo, por lo que necesitaría actualizar todos si hay uno nuevo.

¿Alguna pista?


Actualización de la interfaz de usuario Swagger 2.1.0+: El parámetro del sorter se ha dividido en dos parámetros, como se indica en la Corrección 1040 , Corrección 1280 :

ApisSorter

Aplicar una ordenación a la lista de API / etiquetas. Puede ser ''alfa'' (ordenar por nombre) o una función (consulte Array.prototype.sort () para saber cómo funciona la función de clasificación). El valor predeterminado es el orden devuelto por el servidor sin cambios.

operacionesOrdenador

Aplicar una ordenación a la lista de operaciones de cada API. Puede ser ''alfa'' (ordenar por rutas alfanuméricamente), ''método'' (ordenar por método HTTP) o una función (ver Array.prototype.sort () para saber cómo funciona la función de clasificación). El valor predeterminado es el orden devuelto por el servidor sin cambios.

Así que querrá actualizar el sorter a apisSorter para ordenar la lista de API alfabéticamente, y / o el orden de operationsSorter para ordenar la lista de operaciones de cada API. La demostración de la tienda de mascotas se ha actualizado a apisSorter, como se muestra a continuación:

Example : ( demo de trabajo , ordenada alfabéticamente)

window.swaggerUi = new SwaggerUi({ ... apisSorter : "alpha" });

Para versiones de Swagger UI anteriores a 2.1.0 :

El parámetro del sorter sigue siendo relevante para versiones anteriores de la interfaz de usuario de Swagger:

Puede usar el parámetro de clasificación al crear instancias de SwaggerUi. Esto sucede en el javascript en el index.html Swagger-Ui. De la documentation :

El clasificador aplica un ordenamiento a la lista de API. Puede ser '' alfa '' (ordenar las rutas alfanuméricamente) o '' método '' (ordenar las operaciones por el método HTTP). El valor predeterminado es el orden devuelto por el servidor sin cambios.

Example :

window.swaggerUi = new SwaggerUi({ ... sorter : "alpha" });


// 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]); }, });