【发布时间】:2015-05-07 16:37:22
【问题描述】:
我想在通过 urlmapping 之前触发过滤器,我该怎么做? 这是一个场景,用户在 www.myapp.com/someurl 中键入,而“someurl”未映射到 UrlMappings.groovy,因此用户将被重定向到 404 页面。但我想在进入 404 页面之前拦截该进程。 'someurl' 可能是任何东西,可能是 '/users'、'users/admin/43' 或任何东西。
我发现的一个选项是使用 servlet 级别过滤器,但这似乎给我带来的麻烦比我预期的要多;添加此过滤器不会让页面呈现,我只是得到一个空白的白色屏幕。还有其他方法吗?
基本上,我试图在 urlmappings 中验证之前重写 url。
【问题讨论】:
-
使用 Grails 过滤器并重定向到 URL 映射中列出的新 URL 有什么问题?从您的问题中很难理解您要做什么以及遇到了什么问题。
-
我在问题中添加了更多描述。
-
所以基本上你试图在它到达 URLMapping 并确定它是 404 之前拦截一些东西?
-
@EddardStark 使用过滤器将一个 url 映射到另一个 url 不是一个好主意,使用 url 映射这就是我们拥有它们的原因。
-
@JoshuaMoore 是的!没错!
标签: grails filter servlet-filters