0

在 url 映射中:

     "/$controller/$action?/$id?"{
                constraints {
                // apply constraints here
                }
     }
    "/index"(controller: 'home', action: 'index')
    "/"(controller: 'home', action: 'index')

如果用户使用带有根 url 的索引,它会很好地重定向。

控制器 + 动作重定向很好。

但是根(“/”)本身并不会重定向到主控制器。

我也在使用弹簧安全

grails.plugin.springsecurity.controllerAnnotations.staticRules = [
    [pattern: '/',               access: ['permitAll']],
    [pattern: '/index',          access: ['permitAll']]
]

我错过了什么简单的事情?

4

3 回答 3

2

org.grails.plugins:grails-google-visualization:2.2.1对我来说,这是由于在 Grails 4.0.0 中引入造成的。

除了禁用 grails-google-visualization 插件之外,没有找到解决方法。

该插件似乎修改/覆盖了 UrlMapping。

于 2019-08-22T09:09:57.237 回答
1

我在映射根时遇到了同样的问题,到目前为止我发现的唯一解决方法是用 uri: 替换控制器和操作,例如

"/"(uri: "/home/index") // in place of (controller: 'home', action: "/index")

于 2019-08-20T13:30:46.997 回答
-1

最可能的原因是您在配置中的 staticRules 中错过了 permitAll /home/index。Spring Security 遵循悲观锁定方法,默认拒绝所有 URL 的访问。

于 2019-08-19T06:42:50.590 回答