Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.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
Angularjs 如何配置IIS URL重写模块以使用;HTML 5 pushState“;url上的样式和哈希片段?_Angularjs_Angular_Iis_Url Rewriting - Fatal编程技术网

Angularjs 如何配置IIS URL重写模块以使用;HTML 5 pushState“;url上的样式和哈希片段?

Angularjs 如何配置IIS URL重写模块以使用;HTML 5 pushState“;url上的样式和哈希片段?,angularjs,angular,iis,url-rewriting,Angularjs,Angular,Iis,Url Rewriting,Angular 2有一个PathLocationStragy来处理html5路由,还有一个HashLocationStragy来处理路由上的散列片段“#” 这里的问题是当我们使用OIDC(OpenID Connect)进行用户身份验证和PathLocationStragy(或AngularJS上路由的HTML5模式)时,因为某些流上的OpenID在用户使用url登录后重定向回站点后返回“#”片段后的数据,如下所示: http://mysite/callback#code=7b60c0570d7c

Angular 2有一个PathLocationStragy来处理html5路由,还有一个HashLocationStragy来处理路由上的散列片段“#”

这里的问题是当我们使用OIDC(OpenID Connect)进行用户身份验证和PathLocationStragy(或AngularJS上路由的HTML5模式)时,因为某些流上的OpenID在用户使用url登录后重定向回站点后返回“#”片段后的数据,如下所示:
http://mysite/callback#code=7b60c0570d7c4da0fc60678c0e46deadd5eeab0a659203fd44efb7cd51b2cdab&id_token=eyJhb …

对于html5路由,IIS Url重写上的以下设置非常常见:


...
...

但是当web服务器收到带有
http://mysite/callback#code=7b60c0570d7c4d
在用户记录此请求后,来自授权服务器的响应为:
403-禁止:访问被拒绝。

我认为问题在于Url重写设置,而不是AngularJS或Angular2应用程序的。。。
如何解决这个问题?如何将AngularJS/Angular 2与html5路由样式和OpenID Connect一起使用?

片段值不发送到服务器,它们仅由浏览器在客户端处理。浏览器仅发送
http://mysite/callback

如果您也刷新了页面,会发生这种情况吗?请尝试删除
看看它是否有效,尽管我不是IIS专家。。