使用AngularJS创建子域路由的解决方案是什么?
我在谷歌和其他许多人上搜索过,我无法解决这个问题。
我想要" http://minetop.net/serverName"
app.config(function($routeProvider)
{
$routeProvider
.when('/:serverID', {
templateUrl : '../design/template/pages/server.html',
controller : 'srvCtrl'
})
.when('/', {
templateUrl : '../design/template/pages/home.html',
controller : 'mainCtrl'
});
});
但我希望在子域名中执行此操作,例如:http://serverName.minetop.net
PS:" serverName"是动态的。
答案 0 :(得分:0)
不幸的是,就Angular路由器而言,子域甚至不是您应用的一部分。要重定向到子域,您需要做一些事情。
1)修改/ private / etc / hosts文件以包含子域。从命令行
sudo vi /private/hosts/etc
然后在localhost别名旁边添加子域。这将允许您的本地解析子域到您的应用
2)创建一个路由过滤器,在某些条件下将重定向到您的子域。为了实际重定向,只需使用
myRedirectionFilter = function(){
if("foo" !== "bar"){
window.location.href = "http://serverName.minetop.net"}
}
3)在routes.js文件的resolve函数中使用过滤器。
.when('/', {
templateUrl : '../design/template/pages/home.html',
controller : 'mainCtrl',
resolve: myRedirectionFilter()
});