Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从角js中具有特殊字符#的路由中获取任何参数值_Javascript_Angularjs - Fatal编程技术网

Javascript 如何从角js中具有特殊字符#的路由中获取任何参数值

Javascript 如何从角js中具有特殊字符#的路由中获取任何参数值,javascript,angularjs,Javascript,Angularjs,我有以下角度路线: http://localhost:9000/login#id=54119212faf7d1ec159f9781&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJfaWQiOiI1NDExOTIxMmZhZjdkMWVjMTU5Zjk3ODEiLCJpYXQiOjE0MTA0Mzc2NTA3MTcsImV4cCI6MTQxMDQ1NTY1MDcxN30.x3G_faxsnzbyZWSRMNNpc2qFjHI6kBTca_Q9j

我有以下角度路线:

http://localhost:9000/login#id=54119212faf7d1ec159f9781&token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJfaWQiOiI1NDExOTIxMmZhZjdkMWVjMTU5Zjk3ODEiLCJpYXQiOjE0MTA0Mzc2NTA3MTcsImV4cCI6MTQxMDQ1NTY1MDcxN30.x3G_faxsnzbyZWSRMNNpc2qFjHI6kBTca_Q9jwnWRHQ
如何从此路由访问id参数。注意这里#不是?。 如果有的话?然后我可以通过
$location.search()

如果您有什么好方法,请建议我使用$location获取url并对其执行字符串操作。这大概就是你需要的(我不确定你是否需要解释#)$location.search()将不起作用,因为url中没有“?”:

var url = $location.url();

//check if id is present in url    
if(url.indexOf('id') != -1)
{
  //extract value from url
  var id = url.replace('/id=', '');
}

作为对@charlietfl问题的回答(我没有足够的点来评论),我以前在使用API的客户端(隐式)身份验证(我的例子中是Instagram)时使用过这个,其中我的重定向URL包含一个访问令牌。

您必须解析
window.location.hash
,或者我猜
$location.hash()
有什么原因不能使用@JaredReeves吗我认为
$routeParams
不会加载哈希;它只是加载了位置的搜索和路径问题,但为什么您首先要这样格式化url?角度路由参数将负责
id=
,并且具有更好的结构可以利用
$location.search()