Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用GAE在应用程序中处理子域_Java_Google App Engine_Restlet - Fatal编程技术网

Java 使用GAE在应用程序中处理子域

Java 使用GAE在应用程序中处理子域,java,google-app-engine,restlet,Java,Google App Engine,Restlet,如何在GAE应用程序中处理子域?应用程序是否可能与以下内容相区别: 例如 user1.xyz.com和user2.xyz.com?使用Java代码?还是应该用我的域名托管,比如GoDaddy?或者这可以通过像Spring或Restlet这样的web框架来实现?或者我需要同时使用(GoDaddy+Spring或Restlet) 我正在为我的web应用程序使用Restlet framework,是否可以执行以下操作: public class RootServerResource extends S

如何在GAE应用程序中处理子域?应用程序是否可能与以下内容相区别:

例如

user1.xyz.com
user2.xyz.com
?使用Java代码?还是应该用我的域名托管,比如GoDaddy?或者这可以通过像Spring或Restlet这样的web框架来实现?或者我需要同时使用(GoDaddy+Spring或Restlet)

我正在为我的web应用程序使用Restlet framework,是否可以执行以下操作:

public class RootServerResource extends ServerResource {
  @Get("json")
  public String represent() {
    String username = getRequest().getSubDomain(); //  here!
    return "";
  }
}
以下是我的问题:

  • 单个GAE应用程序是否可以处理多个子域
  • 如果是,是否可以将GAE子域设置为通配符(*)
  • 使用Restlet如何获得子域

HttpServletRequest
类中,您可以使用
getServerName()
了解客户端请求的主机名

说明如何使用Restlet获取
HttpServletRequest

您可以使用实用程序类org.restlet.ext.servlet.ServletUtils来访问HttpServletRequest

现在,完整的代码将是:

org.restlet.Request restletRequest = getRequest();
HttpServletRequest servletRequest = ServletUtils.getRequest(restletRequest);
String serverName = servletRequest.getServerName();

实际上我需要的是我需要得到客户的IP和域名你确定吗?你的问题不是这么说的。无论如何,您可以通过
getRemoteAddr()
getRemoteHost()
获取客户端的IP地址和域。请注意,它并不总是客户端的IP地址,例如,如果他使用代理,您将只看到代理地址。