From 25ec6ce66f9e5093509ab84f355362c91b36d922 Mon Sep 17 00:00:00 2001 From: ByteExpress <149938387+ByteExpress@users.noreply.github.com> Date: Tue, 21 Nov 2023 22:04:18 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E9=80=9A=E8=BF=87htt?= =?UTF-8?q?p=20query=E5=8F=82=E6=95=B0=20baseUrl=20=E6=9D=A5=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E8=AE=BE=E7=BD=AE=20baseUrl=20=E4=BB=A5=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=A4=9A=E4=B8=AA=E5=9F=9F=E5=90=8D/=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E7=9A=84=E5=85=B1=E4=BA=AB=E4=BD=BF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/keking/web/filter/BaseUrlFilter.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java b/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java index 96828fd90..180c0ae9c 100644 --- a/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java +++ b/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java @@ -43,11 +43,14 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha final String urlInHeader = servletRequest.getHeader("X-Base-Url"); if (StringUtils.isNotEmpty(urlInHeader)) { baseUrl = urlInHeader; + } else if (servletRequest.getParameterMap().containsKey("baseUrl")) { + //2、支持通过http query参数 baseUrl 来动态设置 baseUrl 以支持多个域名/项目的共享使用 + baseUrl = servletRequest.getParameter("baseUrl"); } else if (configBaseUrl != null && !ConfigConstants.DEFAULT_BASE_URL.equalsIgnoreCase(configBaseUrl)) { - //2、如果配置文件中配置了 baseUrl 且不为 default 则以配置文件为准 + //3、如果配置文件中配置了 baseUrl 且不为 default 则以配置文件为准 baseUrl = configBaseUrl; } else { - //3、默认动态拼接 baseUrl + //4、默认动态拼接 baseUrl baseUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + servletRequest.getContextPath() + "/"; }