4

我正在使用 Grails 2.4.4 并想为一系列 HTTP 错误代码(如 450-499、510-540)定义一个通用的 UrlMapping。

我发现了一些相关的问题——即使是在SO上——但答案要么已经过时,要么不起作用。

一旦我在错误映射上使用正则表达式,容器就不会启动。

例如,这个简单的例子会失败:

"$errorCode" {
     controller = "error"
     action = "general"
     constraints {
          errorCode(matches:/\d{3}/)
     }
}

有谁知道我可以如何处理这个?

4

1 回答 1

0

我尝试使用过滤器做同样的事情,但在检查 httpResponse 中的状态代码后我们无法再次重定向,因此这也无济于事。

根据 grails-doc “映射到响应代码”

http://grails.github.io/grails-doc/3.1.x/guide/single.html#urlmappings

我们只能对它们进行硬编码并将其重定向到提到的控制器和操作。所以你需要提到所有的http代码并单独处理它们。

谢谢。

于 2015-10-19T07:52:00.320 回答