解决办法:添加前置过滤器,强制将scheme配置为https,将serverPort配置为443
@Slf4j
public class MyPreFilter implements Filter {
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
throws IOException, ServletException {
HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
MyRequestWrapper myRequestWrapper = new MyRequestWrapper(httpRequest);
filterChain.doFilter(myRequestWrapper, servletResponse);
}
}
@Slf4j
public class MyRequestWrapper extends HttpServletRequestWrapper {
public MyRequestWrapper(HttpServletRequest request) {
super(request);
}
@Override
public String getScheme() {
return "https";
}
@Override
public int getServerPort() {
return 443;
}
}