3

我有两个登录页面,一个用于用户,另一个用于管理员。为了知道谁在尝试登录,我想到了一个 url 模式,比如/app/admin/loginand /app/user/login。我不能按子域更改。这是一个使用 spring 安全性的 grails 应用程序。因此默认情况下,所有登录请求都发送到/j_spring_security_checkurl。我应该怎么做才能将登录提交 url 从$context 可以是用户或管理员 /j_spring_security_check的位置更改?/app/$context/login

我面临的另一个问题是,如何获取我的自定义 UserDetailsS​​ervices 类的请求参数?该类params中不可用,因此我不能params.context像在 Filters 类中那样编写。

对此的任何见解都将非常有帮助。
谢谢。

4

1 回答 1

1
  1. 这篇文章可能有助于解决 j_spring_security 问题。解决方案不是直接针对 Grails,但我看到 Grails 允许您以任何您喜欢的方式自定义 Spring。

  2. 对于有关参数的服务层问题:参数是控制器的隐式 HttpRequest.parameters 对象。永远不要试图在服务层中期望任何 Http 感知。

所以我们不能在服务层引用它是一件好事。我的建议是将它作为参数传递给服务类方法。

于 2012-04-18T17:33:42.850 回答