由于Grails是在Spring上构建的,因此您可以通过两种方式添加过滤器:Grails和Spring。遗憾的是,在2.5.1中,Grails过滤器仅在请求了一些非静态资源时运行。如果你想在/ assets / videos上运行一个过滤器,就像我正在尝试的那样......除非你有一个从/ assets / videos到空控制器动作的URL映射,否则它将无法工作。过滤一些Filters.groovy文件。
Spring方式更低级:你添加了Filter的子类,也许是OncePerRequestFilter。在src / main / groovy /
中我读到您可以使用grails install-templates在src / templates / web.xml中获取web.xml。我在那里添加了过滤器定义并使用grails run-app运行我的应用程序。令人失望的是,我的过滤器没有像我预期的那样运行。
文档没有说明如何做到这一点所以我在这里很黑暗。如何将一个普通的servlet过滤器添加到他的grails应用程序中?