java - 配置 Swagger-ui 路径
问题描述
我正在使用 yml 文件和使用 quarkus 从下面的上下文中配置 swagger-ui 路径
swagger-ui:
路径:/clinic/swagger-ui
但是当启动我的应用程序并访问 swagger 时看不到页面 swagger-ui 并将配置更改为波纹管,当我将其更改回上述配置时,我可以看到页面 swagger-ui 我可以看到 swagger-ui。
swagger-ui:
路径:/swagger-ui
我这样做,如果它停止并重新启动我的应用程序,它会在本地执行期间工作,我必须重做我上面描述的相同步骤。我不需要这个的任何解决方案吗?因为我有一个必须遵循的规则,其余的路由和端点的其余部分必须在 /clinic 内,如下所示
/clinic/swagger-ui -> 页面招摇
/clinic/api/ -> 端点休息
解决方案
这适用于 OpenAPI 和 Swagger UI 的 Quarkus 指南。为了重现,我做了以下事情:
- 创建具有以下扩展的 Quarkus (1.8.1) 项目:
quarkus-smallrye-openapi
quarkus-config-yaml
(为你application.yml
)quarkus-resteasy
(用于编程 REST 服务)quarkus-resteasy-jsonb
- 创建您的 REST 端点(我刚刚做
/fruits
了上述指南的示例) - 配置
application.yml
quarkus:
smallrye-openapi:
path: /fruit/openapi
swagger-ui:
path: /fruit/swagger-ui
always-include: true
现在,您可以通过 Swagger UI 访问 OpenAPI yml,只需curl http://localhost:8080/fruit/openapi
将浏览器指向http://localhost:8080/fruit/swagger-ui
.
请注意,该设置always-include: true
使 Swagger UI 即使在生产中也可用!
推荐阅读
- angularjs - Chrome 开发工具未映射 ts 源
- facebook - iOS facebook图形批量请求第一个请求不起作用
- javascript - vba 用 Excel 数据填充 Internet Explorer 表单
- php - Laravel 多次插入不起作用说“插入值列表不匹配”
- django - Django 用户帐户删除然后返回重定向和渲染
- azure-cosmosdb - CosmosDB 查询日期范围 + 索引
- vbscript - 在命令提示符中模拟输入键不起作用
- vue.js - 无法挂载组件
- bash - 如何让期望等待 exec 直到输出结果
- jquery-ui - 使用 JQuery ui 拖放 Div 列和 Div 行