|
|
|
@ -516,15 +516,27 @@ public abstract class BaseController { |
|
|
|
|
|
|
|
protected String constructBaseUrl(HttpServletRequest request) { |
|
|
|
String scheme = request.getScheme(); |
|
|
|
if (request.getHeader("x-forwarded-proto") != null) { |
|
|
|
scheme = request.getHeader("x-forwarded-proto"); |
|
|
|
|
|
|
|
String forwardedProto = request.getHeader("x-forwarded-proto"); |
|
|
|
if (forwardedProto != null) { |
|
|
|
scheme = forwardedProto; |
|
|
|
} |
|
|
|
|
|
|
|
int serverPort = request.getServerPort(); |
|
|
|
if (request.getHeader("x-forwarded-port") != null) { |
|
|
|
try { |
|
|
|
serverPort = request.getIntHeader("x-forwarded-port"); |
|
|
|
} catch (NumberFormatException e) { |
|
|
|
} |
|
|
|
} else if (forwardedProto != null) { |
|
|
|
switch (forwardedProto) { |
|
|
|
case "http": |
|
|
|
serverPort = 80; |
|
|
|
break; |
|
|
|
case "https": |
|
|
|
serverPort = 443; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
String baseUrl = String.format("%s://%s:%d", |
|
|
|
|