【问题标题】:How to get the domain name from the request in a Java servlet?如何从 Java servlet 中的请求中获取域名?
【发布时间】:2011-11-10 04:03:45
【问题描述】:

如果单个 servlet 提供来自两个域 example1.comexample2.com 的数据,那么如何从 Java servlet 中的请求中检索域信息?

目的是根据域执行不同的操作。

【问题讨论】:

  • 嗨培根,你能解决这个问题吗?

标签: java http servlets


【解决方案1】:

很简单,javax.servlet.ServletRequest.getServerName()。还提供further methods检索请求信息,getScheme()getServerPort()...

编辑:如果您有一个 Web 服务器保护您的应用程序服务器,则必须对其进行配置以支持此功能,否则 getServerName() 返回的应用程序服务器名称可能不是您想要的...

【讨论】:

  • 这是错误的,getServerName:返回请求发送到的服务器的主机名。它是 Host 标头值中“:”之前部分的值(如果有),或者解析的服务器名称,或者服务器 IP 地址。要从客户端请求中获取域,请执行以下操作: String domain = new URL(request.getRequestURL().toString()).getHost();
猜你喜欢
  • 1970-01-01
  • 2017-07-02
  • 1970-01-01
  • 2013-01-09
  • 1970-01-01
  • 2012-03-26
  • 2019-11-13
  • 1970-01-01
相关资源
最近更新 更多