我要捕获的网址是
http://test.sample.com/?code=4/CAKREYsOD89sg7eXahK93Pw7pnMb5ndkiCrzSUlMS1U
我需要在$ routeProvider中捕获上面的url。 我的代码是。
$routeProvider.when('/:code/',{
template: '',
controller: function ($location,$rootScope) {
console.log("I got you. .. ");
}
})
.otherwise({
redirectTo: '/login'
});
我的问题是我无法在何时捕获此网址。
感谢任何帮助。
答案 0 :(得分:1)
使用$routeParam
$routeProvider.when('/:code/',{
template: '',
controller: function ($location,$rootScope) {
var urlCopied=$location.path(); // get the current path
}
})
.otherwise({
redirectTo: '/login'
});
希望有所帮助
答案 1 :(得分:0)
你可以试试这个
// given url http://example.com/#/some/path?foo=bar&baz=xoxo
var absUrl = $location.absUrl();
// => "http://example.com/#/some/path?foo=bar&baz=xoxo"
答案 2 :(得分:0)
有两种方法可以满足您的需求:
如果您想捕获特殊参数,请不要将其放在查询参数中。使用这样的网址:
http://test.sample.com/#/code/CAKREYsOD89sg7eXahK93Pw7pnMb5ndkiCrzSUlMS1U
并且像这样抓住它:
$routeProvider.when('/code/codeID',{
template: '',
controller: function ($routeParams) {
console.log($routeParams.codeID);
}
})
.otherwise({
redirectTo: '/login'
});
如果您想使用查询参数,可以这样做:
$routeProvider.when('/',{
template: '',
controller: function ($location) {
var queryParams = $location.search();
console.log(queryParams.code);
}
})
.otherwise({
redirectTo: '/login'
});
并使用此网址:
http://test.sample.com/?code=4/CAKREYsOD89sg7eXahK93Pw7pnMb5ndkiCrzSUlMS1U
我希望这段代码可以帮到你!