From c9e729b7abfe0312dc133b35bc0949b0e5b3022a Mon Sep 17 00:00:00 2001 From: wxz Date: Wed, 25 Nov 2020 14:17:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E8=8E=B7=E5=8F=96=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=9F=9F=E5=90=8D=E7=AB=AF=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/commons/tools/utils/HttpContextUtils.java | 8 +++++++- .../main/java/com/epmet/modules/test/TestController.java | 5 +++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpContextUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpContextUtils.java index 6c3f50f057..a23b8f5d55 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpContextUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/HttpContextUtils.java @@ -74,6 +74,12 @@ public class HttpContextUtils { if (StringUtils.isBlank(scheme)) { scheme = "http"; } - return String.format("%s://%s:%s", scheme, request.getServerName(), request.getServerPort()); + + String hostAndPort = request.getHeader("Host-And-Port"); + if (StringUtils.isBlank(hostAndPort)) { + hostAndPort = request.getServerName().concat(":").concat(String.valueOf(request.getServerPort())); + } + + return String.format("%s://%s", scheme, hostAndPort); } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java index 9a2df7e1d0..e68a222f27 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/test/TestController.java @@ -1,5 +1,6 @@ package com.epmet.modules.test; +import com.epmet.commons.tools.utils.HttpContextUtils; import com.epmet.commons.tools.utils.Result; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -13,8 +14,8 @@ public class TestController { @PostMapping("get-req-info") public Result testDomain(HttpServletRequest request) { - String domain = String.format("%s://%s:%s", request.getHeader("X-Forwarded-Scheme"), request.getServerName(), request.getServerPort()); - return new Result().ok(domain); + String requestServerNameAndPort = HttpContextUtils.getRequestServerNameAndPort(); + return new Result().ok(requestServerNameAndPort); } }