3

我正在尝试将 CAS 用作我的组织的 SSO 解决方案。使用此解决方案的应用程序之一是 GWT 应用程序,它使用 GWTP 作为其 MVP 平台。

当尝试导航到我的应用程序中的某个内部位置时,例如:

http://myapp.com/myapp.html#!somePlace

CAS 过滤器识别出我没有通过身份验证,我被重定向到 CAS 登录页面。这是意料之中的。但是,正如我们所知,内部位置状态 (#!somePlace) 不会发送到服务器,因此它不会保留在 CAS 重定向请求中。因此,在 CAS 中登录后,我只是被重定向到:

http://myapp.com/myapp.html

所以我无法重现所请求的内部位置。

有没有人在集成 CAS 和 GWT 以及解决或解决这个问题方面有一些经验?

谢谢

4

1 回答 1

3

目前在 GitHub 上有针对您的问题的拉取请求。

简而言之,就初始 URL 的锚部分附加到 CAS 服务器应用程序中登录页面的“服务”参数而言,最简单的解决方案是在登录页面的表单中添加“onsubmit”事件处理程序。在事件处理函数中,您应该在当前位置提取“#”之后的部分,然后将该部分添加到 form.action 的值中。

于 2012-09-14T05:50:40.183 回答