【发布时间】:2016-04-09 08:52:48
【问题描述】:
我有 3 个路由文件,分别是 web.route、admin.routes 和 swift.routes。每个路由文件都代表一个子域,应根据 URI 子域路径进行更改。 玩 Java!
public Handler onRouteRequest(RequestHeader requestHeader) {
String host = requestHeader.getHeader(Http.HeaderNames.HOST);
Pattern pattern = Pattern.compile("^([a-z0-9]+)\\.([a-zA-Z0-9_%*:.]+)");
Matcher matcher = pattern.matcher(host);
if (matcher.matches()) {
String subDomain = matcher.group(1);
if (subDomain.equalsIgnoreCase("swift")) {
//use swift routes file
} else if(subdomain.equalsIgnoreCase("admin")) {
//use the admin routes file
} else {
//use the web route for all other subdomain or non-subdomain
}
}
return super.onRouteRequest(requestHeader);
}
我在网上看到了很多关于这个问题的讨论,但没有一个足够详细,也许这是 play framework 2.4 我所看到的都是 play 1 和 play scala。我也明白完成这项工作的最佳方法是通过 SbtProject https://www.playframework.com/documentation/2.2.x/SBTSubProjects 但是,我没有奢侈的方法去经历这种方法。任何帮助将不胜感激。
【问题讨论】:
标签: java playframework typesafe