如何获取以#开头的url参数?
How to get url parameters when it starts with a #?
我是 Angular JS 和 Salesforce 技术的初学者。
有一个 API 的 salesforce returns 我的结果如下。
http://localhost:63342/www/index.html#/#access_token=access_token&refresh_token=refresh_token&instance_url=url&id=id&issued_at=1444216583754&signature=sign&scope=scope&token_type=Bearer
此处,url 参数以 hash(#).
开头
如果它以问号(?)开头,比如
http://localhost:63342/www/index.html#/?access_token=access_token&refresh_token=refresh_token&instance_url=url&id=id&issued_at=1444216583754&signature=sign&scope=scope&token_type=Bearer
然后我可以简单地使用 $location.search
方法,但 salesforce 不会那样响应。
所以我的问题是访问 Angular JS 中的 url 参数。
编辑:
我使用了 $location.hash
结果如下:
#/#access_token=access_token&refresh_token=refresh_token&instance_url=url&id=id&issued_at=1444216583754&signature=sign&scope=scope&token_type=Bearer
我也试过 $location.hash.acess_token
但没用。
我想访问单个参数,有办法吗?
#
之后的部分称为散列。所以你可以在 window.location.hash
或 Angular 中找到它 你会在 $location.hash()
中找到它
在javascript中使用window.location.hash。
像这样使用脚本
<script>
var app = angular.module('queryStringApp', []);
app.controller('firstCtrl', function($scope, $location) {
alert("Account Number is - "+ $location.search()['accountNo']);
$scope.accountNo=$location.search()['accountNo'];
});
</script>
检查 plunkr http://plnkr.co/edit/TNX06WFx0n6p1mSLPKfP?p=preview
我是 Angular JS 和 Salesforce 技术的初学者。
有一个 API 的 salesforce returns 我的结果如下。
http://localhost:63342/www/index.html#/#access_token=access_token&refresh_token=refresh_token&instance_url=url&id=id&issued_at=1444216583754&signature=sign&scope=scope&token_type=Bearer
此处,url 参数以 hash(#).
开头如果它以问号(?)开头,比如
http://localhost:63342/www/index.html#/?access_token=access_token&refresh_token=refresh_token&instance_url=url&id=id&issued_at=1444216583754&signature=sign&scope=scope&token_type=Bearer
然后我可以简单地使用 $location.search
方法,但 salesforce 不会那样响应。
所以我的问题是访问 Angular JS 中的 url 参数。
编辑:
我使用了 $location.hash
结果如下:
#/#access_token=access_token&refresh_token=refresh_token&instance_url=url&id=id&issued_at=1444216583754&signature=sign&scope=scope&token_type=Bearer
我也试过 $location.hash.acess_token
但没用。
我想访问单个参数,有办法吗?
#
之后的部分称为散列。所以你可以在 window.location.hash
或 Angular 中找到它 你会在 $location.hash()
在javascript中使用window.location.hash。
像这样使用脚本
<script>
var app = angular.module('queryStringApp', []);
app.controller('firstCtrl', function($scope, $location) {
alert("Account Number is - "+ $location.search()['accountNo']);
$scope.accountNo=$location.search()['accountNo'];
});
</script>
检查 plunkr http://plnkr.co/edit/TNX06WFx0n6p1mSLPKfP?p=preview