提交 b9f2d79d 作者: 方治民

feat: 优化 swagger 打印接口文档地址根据 server.address 配置决定

上级 c3352821
......@@ -4,6 +4,7 @@ server:
# Sentry
sentry:
# https://sentry.yiring.com
# TODO: 替换成正式项目的 Sentry DSN
# basic-api
dsn: https://fec8292ec19b34fd541c75f907fcec9b@sentry.yiring.com/2
traces-sample-rate: 1.0
......@@ -14,14 +15,16 @@ spring:
boot:
admin:
client:
url: http://127.0.0.1:18891
# url: http://127.0.0.1:18891
url: https://sbas.yiring.com
username: admin
password: spa.developer@Yiring.com
password: sba.developer@Yiring.com
instance:
# TODO: 替换成正式项目的 Spring Boot Admin Server URL
management-base-url: http://39.100.252.176:42100/api
# Spring Boot Actuator
management:
server:
port: 8182
endpoints:
web:
exposure:
......
......@@ -2,7 +2,6 @@ app:
version: ${version}
server:
address: 127.0.0.1
port: 8081
servlet:
context-path: /api
......
......@@ -4,6 +4,7 @@ package com.yiring.common.swagger;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.lang.Console;
import cn.hutool.core.net.NetUtil;
import cn.hutool.core.util.StrUtil;
import com.yiring.common.core.I18n;
import io.swagger.v3.oas.models.ExternalDocumentation;
import io.swagger.v3.oas.models.OpenAPI;
......@@ -24,6 +25,7 @@ import org.springframework.boot.CommandLineRunner;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import org.springframework.core.env.Environment;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
......@@ -57,6 +59,7 @@ public class SwaggerConfig implements CommandLineRunner {
String appVersion;
final I18n i18n;
final Environment environment;
@Bean
public OpenAPI api() {
......@@ -182,9 +185,16 @@ public class SwaggerConfig implements CommandLineRunner {
@Override
public void run(String... args) {
LinkedHashSet<String> ips = new LinkedHashSet<>();
String serverAddress = environment.getProperty("server.address");
if (StrUtil.isBlank(serverAddress)) {
ips.addAll(NetUtil.localIpv4s());
} else {
ips.add(serverAddress);
}
String protocol = "http";
String link = NetUtil
.localIpv4s()
String link = ips
.stream()
.map(host -> "> " + protocol + "://" + host + ":" + port + path + "/doc.html")
.collect(Collectors.joining("\n\t\t"));
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论