我希望有一个网址,例如http://mydomain.com/token/abc12345
,其中abc12345是一个可变参数。
当angular看到此URL时,我希望它提取令牌,进行数据库查找,将一些内容放入作用域,然后将用户发送到显示其中一些数据的特定页面。
如果用户转到http://mydomain.com/
,我希望它显示某种错误消息。即进入应用程序的唯一有效入口点是通过令牌URL。
如何在Angular中进行设置?我的$ routeProvider定义会是什么样的?
答案 0 :(得分:0)
以这种方式尝试控制器
if($routeParams.tokenId== undefined)
{
alert("wrong url")
return false;
}
//next code
代码说明
此代码用于获取查询字符串值。因此,如果您的网址没有任何查询字符串,那么它会显示警报(或者您可以重定向到错误屏幕)。否则它会调用下一个代码。
答案 1 :(得分:0)
在您的路线定义文件中执行类似的操作;
app.config(function($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'error.html',
controller: 'ErrorCtrl'
})
.when('/token/:tokenid', {
templateUrl: 'yourview.html',
controller: 'TokenCtrl'
})
});
并在ErrorCtrl
app.controller('ErrorCtrl', function () {
alert('wrong page');
});
并在TokenCtrl
app.controller('TokenCtrl', function ($routeParams) {
var token = routeParams.tokenid;
//Do your rest of the stuff
});