gpt4 book ai didi

java - servlet 的根 URL

转载 作者:IT老高 更新时间:2023-10-28 21:00:28 26 4
gpt4 key购买 nike

我想从其中一个 servlet 中获取我的 Web 应用程序的根 url。

如果我在“www.mydomain.com”中部署我的应用程序,我想获得像“http://www.mydomain.com”这样的根 url。

如果我将它部署在具有 8080 端口的本地 tomcat 服务器中,它应该提供 http://localhost:8080/myapp

谁能告诉我如何从 servlet 获取我的 Web 应用程序的根 URL?

public class MyServlet extends HttpServlet {

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String rootURL="";
//Code to get the URL where this servlet is deployed

}
}

最佳答案

您确实意识到客户端看到(和/或在其浏览器中输入)的 URL 与部署您的 servlet 的容器提供的 URL 可能非常不同?

不过,为了获得后者,您可以在 HttpServletRequest 上使用一些方法。 :

  • 您可以调用 getScheme()getServerName()getServerPort()getContextPath()并使用适当的分隔符将它们组合起来
  • 或者您可以调用 getRequestURL() 并从中删除 getServletPath()getPathInfo()

关于java - servlet 的根 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1629102/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com