gpt4 book ai didi

node.js - 从nodejs/express 项目中提供 swagger-ui

转载 作者:太空宇宙 更新时间:2023-11-03 23:38:39 24 4
gpt4 key购买 nike

我想“按原样”使用 swagger-ui dist...几乎按原样。

从 github (2.0.24) 中下载最新版本并将其粘贴到我的应用程序的文件夹中。然后我用express静态地将其服务器出来:

app.use('/swagger', express.static('./node_modules/swagger-ui/dist'));

当我转到以下位置时,它会按预期工作:

https://mydomain.com/swagger

但是我想动态地将 url 字段填充到我的 swagger json 中。我可以将 IE 部署到不同的域:

https://mydomain.com/api-docs
https://otherdomain.com/api-docs

当我访问时:

https://mydomain.com/swagger
https://otherdomain.com/swagger

我想动态设置 url。

这可能吗?

最佳答案

假设/api-docs(或 swagger.json)始终位于同一路径,并且只有域发生变化,您可以将 SwaggerUi 对象的 url 参数设置为 "/path/to/api-docs""/path/to/swagger.json" 而不是完整的 URL。这将使 UI 加载相对于 UI 所在域的路径。

作为引用,我也保留了原始答案,因为它在某些情况下可能有用。

您可以使用 url 参数来设置 UI 应加载的 URL。

也就是说,如果您将其托管在 https://mydomain.com/swagger 下,则可以使用 https://mydomain.com/swagger?url=https:///mydomain.com/api-docshttps://mydomain.com/swagger?https://otherdomain.com/api-docs 指向不同的位置。

但是,据我所知,此功能仅在当前的 alpha 版本中可用(应该足够稳定),而不是在您使用的 2.0.24 中可用(尽管它值得测试)。

关于node.js - 从nodejs/express 项目中提供 swagger-ui,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27724803/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com