我在使用 springfox-swagger2 v2.2.0 时遇到与 HTTP URL 的请求填充端口 80 相关的问题。
是否有禁用端口生成或基于 Spring Profile 以编程方式将端口设置为 443 的方法?
生成的卷曲:
curl -X GET --header “接受:application/json” “https://test.com:80/api/users/search”
遇到同样的问题,但我没有按照@Akshay 的回答升级 spring 框架库(感谢您指出 Swagger2Controller.class),而是将以下属性添加到我的 application-dev.yml 文件中(将主机名替换为您的主机) .
springfox.documentation.swagger.v2.host:主机名:443
我有同样的问题。这是因为 Swagger 使用 Spring Framework 中的一个类,该类将端口 80 添加到 /v2/api-docs json 响应中的主机属性(检查 Swagger2Controller.class)。我在 spring 框架版本 4.1.4.Release 中遇到了这个问题。升级到最新版本 4.3.2.Release 修复了它。
我在 spring boot 3.0 和 openapi-starter-webmvc-ui 2.0 上遇到了同样的问题 (我的项目确实位于负载均衡器后面)
以上答案均无效,所以我尝试了这个:
在我的 swagger 配置中我添加了
@OpenAPIDefinition(
servers = {
@Server(url = "https://MyProject:443", description = "Default Server URL")
}
)
在这个招摇之后将我重定向到 443 端口而不是 80.
希望有帮助