可以从 Java Servlet API 发送到相对路径的重定向吗?

Can a redirect to relative path be sent from Java Servlet API?

我想向浏览器发送相对重定向(到原始请求域和端口)。

像这样:

Location: /app

但是Jetty自动发送完整的绝对路径

Location:http://10.0.2.17:9080/app

documentation也提到相对URL必须由servlet容器转换成绝对URL。

甚至可以通过重定向发送亲戚 URL 吗?

只需手动设置重定向状态和header。将 response.sendRedirect(url) 替换为

response.setStatus(HttpServletResponse.SC_MOVED_TEMPORARILY);
response.setHeader("Location", url);