我有一个自定义 URLMapping 捕获错误代码并调用一些代码(用于监视 5xx/4xx 响应):
// Explicit error-handling for monitoring
"401"(controller:"error", action:"fail4x")
..
"501"(controller:"error", action:"fail5x")
...
我还有一个过滤器,它在关闭之前执行一些身份验证,如果失败则将响应状态设置为 401,并且还从过滤器返回 false。
问题是 401 没有被 URLMappings 捕获。根据文档,从过滤器返回false“[表示]响应已被处理,所有未来的过滤器和操作都不应该执行” - 所以我猜Grails几乎放弃了所有东西,包括处理通常会捕获其他 4xx 错误的 URLMapping?
有没有办法解决这个问题,以便我的 401 来自失败的过滤器被 URLMappings 捕获(假设我已经正确解释了正在发生的事情,并清楚地解释了它!)
[使用 Grails 2.1.1]
干杯。